try to find out what needs to be synchronized in the controllers
because ConnectionInputHandler and ConnectionController were very similar, I created a superclass ConnectionEstablishment and refactored

-one slight downside, ConnectionController now implicitly extends Thread, but doesn't use it

Also, changed all references to the psfi to the one of ConnectionEstablishment
refactoring messed up the psfi order: corrected.