CS 426 Senior Project