Improvements

This is the result of a few months of tinkering, so there are a great many unrelated changes.

- Adds GenabilityClient, which acts as a factory for the different services.
- Updated requests and models to better match the current state of the API
- Eschews string args/constants in favor of enums
- Uses varargs wherever methods accept array arguments
- Runs tests as part of the maven build
- Updates dependency versions (httpclient 4.2beta->4.3, jackson 1.7->2.3, joda-time 2.3...)
- Removes some transitive dependencies (commons-logging)
- Uses slf4j instead of log4j (logging over log4j can be enabled by adding the slf4j-log4j12 artifact)

The same 3 tests fail as before:

```
  AccountServiceTests.testAddAccount:43 bad count
  BulkUploadTests.testUploadGreenButton:37->upload:45 restResponse null
  BulkUploadTests.testUploadCSV:25->upload:45 restResponse null
```

In the case of BulkUploadTests, this is because it refers to files in `/Users/thisisme/`. These files should be added to the repo under src/test/resources and accessed as classpath resources.