Migrate to a class based traktAPI usage

Move all traktjsonrequest calls to a traktAPI class.
Startup notification and scrobler irregardless.
Test account every call, save state after first successful call.
Increase urllib2.urlopen timeout to 60 seconds, from 10 seconds.  Reason
for this, when checking the plugin for MediaPortal, it uses C# webclient
which has a default timeout of 100 seconds.
Rewrite getData, and verify all error scenarios (used own host to
verify).
Make traktAPI a bit more chatty for debugging.
Switch back to JSON username/password for authentication (either way
works).
With debug logging, add ability to hide sensitive data from log.
Setup ability to possibly implement a queue based system for
non-important calls.
Change when classes are loaded, and some username handling.

Change order of initializing classes.
Save username and sha1 of password in private class variables and use these instead of get_string_settings.
React to onSettingsChanged callback, happens whenever OK is selected in the configure screen of plugin.
Add dispatch event for settings change to check for username/password change, and force an account test.
Fix username/password comparison
Merge branch 'master' into traktapi_class

Conflicts:
	notification_service.py
	utilities.py
Merge pull request #63 from nate1280/traktapi_class

Migrate to a class based traktAPI usage