Add an option to convert fields to camelCase

This is a non-breaking alternative to #51. As you suggested, it adds an option to convert all fields to their camelCase equivalent at parse time.

Rationale:

1. The convention for field names is snake_case (and it's followed in every .proto file I've seen), while JavaScript normally uses camelCase for object properties.
2. Getter and setter functions aren't very native to JavaScript since it has `Object.defineProperty`.
3. The official Java implementation relies on the snake_case convention for fields and converts them to camelCase for getter and setter methods (the only way to access the fields).