On select elements, store the initial value on as data-initial-value

This is needed for dynamically generated select elements, where
a JS handler will read this value to pre-set the correct option.
Add support for handling HandlebarJS generated forms

This is a minimal, working but unelegant solution to
export a handlebarjs template variable when the path
looks like a dynamic handlebarjs array.
Improve removeAttribute support for Arrays

When deleting an element from an array, it still stays as
a null value. Use slice instead.
Avoid overwriting of falsy attributes in readAttribute

Do not unconditionally overwrite the last data
part with an empty hash, similar to how it is handled
for remove and writeAttribute
Fix localisation lookup of non-stringy path components
Fix the "for" bit of labels generated with the DSL

We were missing all the _ between path elements.
Merge pull request #1099 from vuntz/fix-label-dsl

Fix the "for" bit of labels generated with the DSL
Merge pull request #1091 from dirkmueller/multi_backend

Support for dynamically generated forms (needed for cinder multi backend)