Re-worked some classes, fixed Problem16 and solved Problem20