Major work on code generation

Do no longer flatten repeats, instead use logical OR and avoid
re-generating the same code for laps within a repeat. This makes the
apps much smaller.
Adds ability to delete interval
Minor styling of editor
Prefix for step type Other
Adds support for time based duration for intervals
Adds some validation to pace inputs
Error handling and checking

Code generation throws error when input is invalid. Filter catches
error and returns message.
Target app gives guidance

Supports range (from/to) and gives hint of new target.
Adds support for cadence as target
Adds support for speed as target
Adds support for heart rate as target
Fix linting error
Made code more DRY
Made error checking more DRY
Moved pace conversion to preprocessor service

Made code generator service follow SRP, and split preprocessing of
input out to separate service.
Adds kcal as duration
Adds a comment in generated code
Delete example input file
Delete more example inputs
Adds power as target