[0.5.0] Implemented Dynamic Form Fields - Rebased

Started here: #60

* Implementation for Dynamic form fields. See: #57
* Fix: Form elements using IDs after their names .eg name="name[]" id="name[]"
* Fix: Engine\Form\Behaviour\ElementsBehaviour::addCkEditor() wouldn't pass $elementOptions to CkEditor instance

Backward compatibility report:
* 3rd party modules/widgets with their custom form fields should implement new method getHtmlTemplateValues() from interface Engine/Form/ElementInterface