Removed junk and refactored everything ^^