.proto work, model classes, command classes, and proto deserialization

* removed MultiCommand as a command type, and replaced with CommandSet
* updated proto enum values to close the gap for multicommand and updated
  command specs
* added model classes for Conversation, Comment, Thread
* added base model class logos.model.Object and support class
  logos.model.ObjectContainer
* added logos.common.preconditions utilities for validation
* added logos.protocol.MessageDeserializer class for deserializing from protobuf
  message to model and command objects