CDAP-772 Feature/cdap 772 namespace service

Namespaces APIs to manage namespaces metadata.
Question: 
Should we create and use ``Id.Namespace`` instead of using namespace name as ``Key``?

- [x] Namespace service to create, list, delete namespaces
- [x] Unit testing, standalone testing
- [x] Testing on a distributed cluster. 
This relates to the above conversation around ``list``. ``Store#list()`` never returns a null. So ``listAllNamespaces`` will never return a ``NOT_FOUND``. I just fixed that. It could return ``INTERNAL_SERVER_ERROR``. The tests in this class only test response codes. So this test will only ensure that the response code is 200. It doesn't actually check the contents. I will see if there is a way to verify response data as well, but I could not find it earlier.