Some modifications, also starting to feature creep pretty hard. Whoops.