1) add backlog option
2) other updates
structral adjustment: separate httpserver