Better error reporting for bad trait definitions.

In the case someone does
   destination_trait: source_trait

instead of
   destination_trait:
	fields: source_trait

it will now get a proper error message.

Change-Id: Ia22f58b6443714c2a407c7a3f94ed24f437efc1c