Merged professor's solution to ours.
Most of the code comes unaltered from professor's solution,
but we kept our class organization for class Task.