Rehaul the library to be closer to jQuery