Non-nullable valuetypes are implicitly required in model description

Three small changes:
  - 46e8a50 makes non-nullable valuetypes implicitly required in model description and route parameters. This should work in both  DSL as annotations strategy.
  - 84e2359 orders resources, apis, operations, models and modelproperties alphabeticaly to make output deterministic. This is more convenient in the approval tests (and it also looks nicer ;-))
  -  a7146ac fixes invalid newlines being added by the JSON prettifier in approval tests