Refactor plugin to use WebSharks plugin format

Resolves Issue #9.

---

@jaswsinc When you get a chance could you please review this for me and make any additional refinements? I've tested this branch and it seems to run just fine, but there might be a few places here and there that can be tweaked. Or not. :) It's almost 3am here so another pair of eyeballs would be helpful before I merge this.