Add HTML5Writer

Added a basic HTML5Writer for generating forms. The current implementation
doesn't yet support many kind of tags or tag types (e.g. empty XML tag).
Those will be added later.
Add first methods for HTML5 writer
Add writeEndTag to HTML5Writer
Add stack based auto tag close method
Add sanity checks to HTML5Writer

Now the writer checks that write operations are legal. E.g. If trying to
write <input </input> (instead of <input></input>), the writer throws an
IllegalStatusException.
Add constants to HTML5Writer
Start HTML5 ModelConfigurator
Cache model field
Add more tests and features to ModelConfiguration

Added ability to check if a configuration exists and fetching that
configuration via more robust way.
Add writeFormStart and new writeAttr methods

WriteFromStart method writes the begining tag of form element. The new
writeAttr takes a condition as third parameter which tells whether the
attribute should be written. E.g. writeAttr("name", name, NO_VALUE !=
name);
Change ModelConfiguration behaviour on field call

Now when the field is called, the configuration for the field is created.
This helps testing. In normal use if user calls the field, the he/she
probably wants to set a value to some attribut so the new behaviour
shouldn't be a problem.
Add name and useDefaultType to ModelConfiguration
Add simple test for HTML5FormProsessor
Change HTML5 module to use LanguageContext

Added new helper classes to keep generics declarations clearer
Add writeEmptyTagEnd method
Change input to be an empty tag
Move HTML5 ModelConfiguration to own package
Extract inner classes to make code cleaner
Simplify model configuration syntax