Finished implementing lab. Still need to run tests.