tidied code
add startup server
create server class
Extra scenarios
stop method