Refactoring code

Split goserve into constituent parts.

Add Makefile to ease development.

Add more cmdline configuration options.
Fix listener initialisation
Improve config descriptions