added somewhat proper exit message
structured code into better submodules
added somewhat navigable interface between states