I'm not sure what you are looking for but here are some links and advices on what SHDP currently has.
As you pointed out both the Tool and the Job rely mainly on Strings - they do have some typed methods for Configuration but actually everything gets stored as a String on the back-end.
While with the job namespace we are forced to allow only Job specific properties with Tool things are a bit more loose. Hadoop gives you more freedom and once can configure a Tool just like a normal bean. Once configured, wire that into our runner and you're good to go.
See  for more information - I'm duplicating the code snippet here as a summary:
<hdp:tool-runner id="someTool" run-at-startup="true">
<bean class="org.foo.AnotherTool" p:input="data/in.txt" p:output="data/out.txt"/>