End-to-End Game Development: Creating Independent Serious Games and Simulations from Start to Finish