Refactored Wave generation to be more polymorphic
Fixed bugs so that it is up to modern version
Made Level abstract and moved the sample level into Level1