Major Updates.

Rewrote plugin, Please test and comment if there are any issues.