[REEF-52]: Remove default implementation annotation on HTTPServer
  There shouldn't be a default implementation on HttpServer to make sure we get
  an early error if it isn't configured. This removes that annotation.

JIRA:
  [REEF-52]: https://issues.apache.org/jira/browse/REEF-52

Pull Request:
  Closes #26
[REEF-53]: Currently there is no interface for NameServer. And all the parameters of
the NameServer have default values. This means as long as a client puts NameServer in the
Driver constructor, no matter it is binded or not, it will be started.

This introduces NameServer interface and renames original NameServer as NameServerImpl,
so that if NameServer is not in a Driver constructor and clients do not bind NameServerImpl
into Driver configuration, NameServer will be not started.

- Introduce NameServer interface and add default Name Server implementation
- remove DefaultNameServerImpl

Author: Julia Wang jwang98052@yahoo.com

JIRA:
  [REEF-53]: https://issues.apache.org/jira/browse/REEF-53

Pull Request:
  Closes #27