Final project with bonus for CS210-Software Construction class