first go at lab3. Not working on lab2 tests yet.