#903 default to using password types when strings are IDs which end in password
#903 allow forms to configure their labels via the json schema
#903 use nicer CSS so we maximise screen real estate for the input fields