Basic config file parsing

The configuration takes the form of a json object. There's still work to
be done here; this is just the minimum needed change to load the config
from a file, rather than hardcoding it in the source.
Added a test that checks throwing a NotAvailableError when adding a un-available node to a group

This is passing
Added a test that checks duplicate nic names

Test passed.
When add two nic of same name to a node, a DuplicateError is raised
Some more tweaking to the design of the config module.

options are now declared and validated in the modules to which they are
relevant. This is a step up, but the validation code is too verbose. I'm
not happy with this yet.
Merge branch 'devel' into config-file

Conflicts:
	haas_shell.py
Merge branch 'deploy-hotfix' into config-file
Switched over to using the ConfigParser module.

It's a bit more of a complete solution than just using the json module.
I'm punting on doing validation for now, but this should make it a bit
easier; the methods to get particular options already throw appropriate
exceptions.
Added some docstrings to haas.config
Moved the file_names kludge back into the source

This time directly into haas_init.
Ug, missed some changes from the last commit.
Merge remote-tracking branch 'origin/devel' into unit-tests
fixed issues pointed out by zenhack
blank line between summary and docstring
Merge pull request #24 from CCI-MOC/unit-tests

Added a test that checks throwing a NotAvailableError when adding a un-a...
Merge pull request #26 from CCI-MOC/config-file

Config file
Merge branch 'devel' into cli-parsing-refactor
deleted most of the command docstrings

They provide nothing other than function name & args, and are no longer
needed to generate the help message. See also issue #34.

I left the one for `show <table_name>`, since it actually provides some
additional information.