New Component Loader

Modules with names beginning with "protoflo" on the Python Path
are loaded - they must have a "__components__" attribute which is
a dict listing the components. Components can be IComponent
classes or methods which return IComponent objects. Alternatively
they can be a filename pointing to a json or fbp graph file.

Component details are cached in components.cache files, and the
modules are only loaded when they are used.

Other changes:
protoflo/server/protocol/component.py:
 - Fixed event handler creation in subscribeNetwork()
Bugfixes

Fixed event handler creation in subscribeGraph()
Fixed bug in selectEdges()