bunch of fixes

Allowed proxy classes to include parameters with default values
Fixed caster to use camelize instead of ucfirst
Update and insert commands now support RETURN parameter
Fixed insert to return value (including new rid)
General spacing corrections
I added in a bunch of comments to try to describe whats going on here. Basically, this is for typehinting the parameters. There were 3 cases I ran into. 1) The typehint class had the same name as the entity class and thus you see the variable $namespaceCollision. I just suffixed the parameterClass with a number (which is why you see the use ... as statement). 2) The typehint class needs a use statement. That is of course if the use statement hasn't already been added to the list. 3) There is no namespace for the typehint because it's a PHP class (stdClass, DateTime, etc).