Initial Commit.
Plugin code is untested but roughly complete.
Tested and working.  Has initialization issues.
Merge remote-tracking branch 'origin/master'