Dialyzer cleanup

 * correct some -specs
 * some record type definitions were incorrect
 * make the xpath macros in esaml.erl dialyzer-clean, put them
   in their own file
Eunit boilerplate at bottom of files
Add some basic eunit tests for the xpath macros