Issue-2

#2 

Proposed fix for the above issue. Added a check for empty strings in the `marshalString` command. Added `TypeError` exceptions if none of the marshal or unmarshal commands are able to handle a given item.
This is pretty useless. For two reasons:

1. It shouldn't really ever come up unless someone uses `unmarshal` on an object that isn't coming directly from the dynamoDb sdk.
2. The printout isn't helpful -- "Unmarshal error: encountered unexpected item [object Object]"

I added it just in case, but I would prefer if it printed out the unknown item key it was trying to unmarshal. I think if I used `_.pairs` from the lodash library to break the incoming item into tuple-like key value pairs it may be easier to print out useful info here. Doing so would ripple through the unmarshaler commands, they'd need to change to expect a `[type, value]` pair instead of an object with keys. Not certain it's really worth the trouble, but I may make a separate issue to address it.