Merge branch 'hotfix/0.7.7' into develop
Restructured how pts.activity_websocket publishes notification events
Added 'modules' to main class to simplify module starting
Added module initialization to main class
Started work on metadata cache
Added support for operating systems with /proc/self/fd, but not /dev/fd
Bumped version to 0.7.8
Merge branch 'release/0.7.8' into feature/syncing-2.0

Conflicts:
	Trakttv.bundle/Contents/Code/core/plugin.py
Working plex metadata cache, might need to adjust to keep down memory usage though.
Fixed issue with invalidating metadata from timeline notifications.
Switched to core.logger in sync.sync_base
Added (optional) caching to core.network
SyncBase get_plex_sections and get_plex_library are per-sync cached
Switched plex.media_server_new to core.logger, PlexMediaServer get_section, get_directories and get_videos methods are now network cached.
Added better guid matching and updated get_library to support movies.
Split SyncBase plex, trakt methods into separate "interfaces", Pull run_watched can now find episodes in plex that aren't marked.