Better field disable

- Fixed a couple strange bugs with fields being unintentionally enabled or
  disabled.
- Added support for "input as" to allow multiply named inputs in one
  form, under a different "field name" with the same input name
  attribute.

Change-Id: I4f12ca84b8222ad1c9e016d9f5ce4f43d18c60fb