Add explicit elasticsearch mappings for strings/ints/etc

titan-es takes advantage of Elasticsearch's default behavior to automatically create indices new field. However, this  [functionality can be disabled](http://www.elasticsearch.org/guide/reference/api/index_/) by `index.mapper.dynamic: false` in `elasticsearch.yml`. Disabling this feature would then break Titan's ability to index various types. This pull request avoids that problem by explicitly creating field mappings for String/Float/Double/Byte/Short/Integer/Long/Boolean types. The before/after is demonstrated in this [gist](https://gist.github.com/erickt/6442316).

Also, this pull request includes some other minor cleanup commits as well.