EXP-131. Better programmatic API for building model definitions and environments

 - converts Avro records to Scala case classes up-front.
 - hide accessors exposing Avro records.
 - Renaming:
   - KVStore becomes AvroKVStore
   - KVStoreSpec becomes KVStore
   - FieldBinding becomes AvroFieldBinding
   - FieldBindingSpec becomes FieldBinding

issue: https://jira.kiji.org/browse/EXP-131
review: https://review.kiji.org/r/791