Refactored the library

Rewrote the entire library. Its a little neater now and handles blacklisting and forcing of certain trackers