added package doc
string helpers are now private
add string helper tests
reimplemented marshaling so it generates an interface tree

generating struct trees won't work in the future when we're building
compound objects.
initial implementation of marshaling for compound objects
added slack notifications to travis.yml
camelize and singularize string helpers