add support for field inclusion lists in ServiceDescription

- fix bug in Datatype
- allow lists to be nested
generate pure structural types for models

they can't have super classes or they won't be interchangable
add TODO
always use response.typeName