docs: update and improve docs for input, ngModelController, and guide/forms

In this PR:

- make it more clear that you should use $validators for custom validation (updated example in guide etc)
- adds explicit information what certain inputs require (Date object for input[date] etc)
- update outdated information (css class list, parse errors)
- explain how to override built-in validators (for ye olde Email regex discussion)

Feeback welcome, I probably have introduced typos and odd wordings.
Ah okay, it's not clear what the regex does, yeah that's true. It's requiring a top-level domain that's at least two characters long. "Fixing" the validator regex to do this is one of the most reported issues, so that's where the example comes from. But you are right, it's not necessary to make it so complex.