CS400 Senior Design