Parsers.config - abstract system calls

This patch makes some system calls more abstract
which makes it easier for other classes to inherit this one.
wrap os.remove inside config.remove
setup.py - code cleanup
Refactor of unit tests

Unit tests have now been refactored to be more clean
and more reliably run new tests without manually adding them
to a test suite.

Any unit tests created should go in a file called test_* which
is more in line with python practices.

For backwards compatibility you there is still a test.py which can be run
from the command line

Please travis, don't break :)
path fixes in unit tests
path fixes for travis
more imports in tests.py (for travis)
more path updates for travis
sys.path fixes for travis
Parsers/get_cfg_value - handle calls before parse()

Make sure that if we ask for maincfg values before calling
parse it is called for us.
test_model now has proper chdir set up
fix for test_model path issues
test_model - fixes for path to nagios.cfg
minor refactor in livestatus tests
Test 2.6 compatibility for test.py
Major rewrite of docstrings

This is a part of autogenerating docs using sphinx, http://sphinx-doc.org/

Some formatting example pages:
  https://pythonhosted.org/an_example_pypi_project/sphinx.html
  http://openalea.gforge.inria.fr/doc/openalea/doc/_build/html/source/sphinx/rest_syntax.html
Set doctest +SKIP for examples

Conflicts:

	tests/test.py
Added initial sphinx tree
tests moved to unittest2
tests cleanup