Validation for S3 UI fields

Closes #30 

Uses the new i18n system for error messages, and HTML5 form validation attributes.
excluding IP-address sounds like very tricky.  Theoretically it can but I don't recommend to do so.
Excluding periods in a row is easy. It would be [-a-z0-9](([-a-z0-9.][-a-z0-9]){1,30}[-a-z0-9.]?|[-a-z0-9.])[-a-z0-9]  or something?  I may miss some corner cases though.