refactored Server.hpp