Finished coding TypeCheck, testing pending