Added content to DSL doc for C++ model types and tasks
- Extracted internal protocol out of NativeBinary for stuff we don't want to expose