add missing float_html_attribute to __init__
add Button, NumberInput, PasswordInput, DateInput
move attribute generation functions to htmlgen.attribute