Added Rewire/Unwire Capabilities

- Added a GUID to pass return values from create to destroy plugin
  functions
- Added create/destroy concept for plugins that need destroy
- Added unwire for specific and all plugins
- Added wire for specific plugins
- Prevented plugins from being wired if they have already been wired
- Added rewire, which first unwires then rewires either specific or
  all plugins

Testing
----
- Mostly TDD
Fixed indentation
Destroy: remove plugin from list even if destroy is not called
Rewire: prevent unwiring the unwired
Merge pull request #12 from eventbrite/rewire

Added Rewire/Unwire Capabilities