CS61BL Project 3: Tsion Behailu, Hayden Na, Michael Rowe, YJ Yang