Converted Learner to a runnable
Converted acceptor to a runnable
Factored Connection out into its own class