Bunch of new stuff. Totally forgot to pace these commits.