Moved activity testing to thread so we can speed up startup times.
Added authenticate parameter to Trakt.request method
Added core functionality to SyncBase for 'Pull' syncing task.
Renamed 'sync.base' to 'sync.sync_base' to resolve submodule conflicts
Updated Trakt.request 'param' parameter to now join a list of parameters, Added Trakt.User get_library and get_ratings methods.
Started working on library fetching with a new Plex API module layout
Refactored plex PlexMetadata and PlexMediaServer method parameter names.
Renamed Scrobbler to ScrobblerMethod
Renamed PlexActivity to Activity, changed Activity to always start the websocket activity method, added Logger
Started work converting Scrobbler to switch between websocket and logging mode.
Added /core/method_manager to share the testing/threading functionality in /pts/activity and /pts/scrobbler
Replaced use of the framework Log with core.logger in some files.
adjusted pts.activity_logging logging levels
Added EventManager for plugin-wide eventing, switched pts.activity methods to fire events on now-playing updates.
Switched pts.scrobbler to use the core.method_manager base and core.logger for logging.
Added 'threaded' parameter to [core.method_manager.Method], scrobbler methods now bind to relevant activity events
EventHandler now catches exceptions on handlers and logs them.
Fixed missing import in pts.scrobbler_websocket, added asynchronous starting to core.method_manager
Unknown websocket activity is now logged