Added events and validity methods to TextField and implemented the events on the GTK+ backend.
Added a test for TextField.Invalid() and implemented it on the GTK+ backend.
Implemented TextField.OnChanged() on Windows.
Implemented TextField.Invalid() on Windows.
Implemented TextField.OnChanged() on Mac OS X.
Updated previous commit to work on password fields as well.
Implemented TextField.Invalid() on Mac OS X.
More TODOs.