First main commit, based off old code