Start consolidating form value

We introduce FormValue object which keeps track of value, serializedValue and
validation attributes. All mixins become more simple as data flow logic isn't
spreaded into them but instead concentrated in the FormValue.

The form behaviour is also easier to test.
tests: pending tests for FormElementMixin
FormMixin: fix tests
FormMixin: better test coverage and fixes
Fix/add more tests
FormValue: add test case for merging nested values
Field/RepeatingFieldSet: fixes
FormValue: test ListValue.{add,remove}
docs: start fixing examples
tests: add cases for FieldMixin
FieldMixin: gardening
FormValue: make sure ListValue.{add,remove} do not destory serialized value and update validation state
Allow passing form value as prop to form elements.
Add CHANGELOG
Add docstrings
FormValue: more test cases
New getting started with CommonJS guide, move old docs
docs: updates
Makefile: remove old targets
tests: remove .only