Implemented while typecheck, finished assigneq, reorganized whats left