Major refactor of the TextHasher, much cleaner now

* Factor out Model from TextHasherController
* Views now use JavaFX bindings
* Add an input length counter