Massive commit, haven't committed in a while... sorry. :(