Added interface and abstract class for attribute model
The inputType should always be string

Contao will automatically ignore empty inputType
Fixed spelling mistake in interface name
Each attribute will now self-handle it's DCA definition
Added all existing attribute as models
Merge branch 'feature/attribute-model' into develop