Api tests - initial commit

Initial commit of Api Tests.
The initial structure for the tests resembles that of other projects, with the test being located under ./tests/api .

To run the tests:
1. *pip install -r deuce/tests/test-requirements.txt*  . The requirements for the api tests include:
nosetests
jsonschema
ddt
opencafe
2. Make a copy of *deuce/tests/api/etc/tests.conf.sample* and edit it with the appropriate information for the deuce base url of the environment being tested
3. Set up the following environment variables:
__CAFE_CONFIG_FILE_PATH__ (points to the complete path to your test configuration file)
`export CAFE_CONFIG_FILE_PATH = ~/.project/tests.conf`
__CAFE_ROOT_LOG_PATH__ (points to the location of your test logs)
`export CAFE_ROOT_LOG_PATH=~/.project/logs`
__CAFE_TEST_LOG_PATH__ (points to the location of your test logs)
`export CAFE_TEST_LOG_PATH=~/.project/logs`
4. `cd deuce/tests`
`nosetests --with-xunit api`
Note: You may want to redirect stderr to a file. Opencafe's logging captures all the requests and responses and nosetests outputs the capture data when a test fails, including all binary (block) data 
Why did you end up splitting up the actual task & exception into two separate methods?