Field definition discovery.

Add some way to describe the field definitions to the API clients.
form => form_element