Hudson compatible and support for Hudson Team Concept.

This is a redo of my initial two pull requests. Once the testing code was added it was easier to merge the two.

For the Hudson testing I added a "hudsontests" module which sets up a hudson 3.1.0 instance with 2 teams and a admin user and runs some simple invocaiton tests copied form systests and some new tests to check if jobs can be created in different teams.

Longer terms it might be worth looking into running a common set of systests against both hudson and jenkins but I wasn't sure how to approach that, and it would properly be too big a refactoring for a simple pulll request

- Changed parsing of responses to use json, and use object_hook to ensure str is returned
instead of unicode
- Add test_json to test the above
- Add team parameter to create job so jobs can be placed in a team. Backwards compatible so
if no team is provided a public / normal job is created
- Add hudsontests to download Hudson 3.1.0 and test that jobs can be invoked and jobs can be created
in different teams