Big initial commit, everything mostly functional...