Massive universal rejig.

Split everything into classes & files.
main.py from 731 lines to 76
Messages removed.