lab 3 in progress - trying to make various classes more portable due to lab 4 requirements