updated argument handler to work without callback

The method seems convoluted, but correctly applies the callback.  Please feel free to update it if it is too long.
Merge pull request #757 from snowkeeper/email

Email - updated argument handler to work without callback