Orange Belt track conditions modelling

Many, many changes to how the track conditions are stored
Different types of track condition kept in separated namespaces (to avoid function duplication)
Comments are welcome!