1. swap RoadTypes enum to version given by Alberth, with StreetTypes and TramTypes, and methods to set / get / check those from the RoadTypes instance a. substitute RoadNotTypes whilst patching, then replace later (RoadNotTypes won’t cause search term conflict with RoadTypes) b. to patch RoadTypes, there are 78 places consuming RoadTypes enum i. move the storage to m4 as part of this, and deprecate the two existing road/tram bits ii. most of the consumers of RoadTypes don’t look hard to patch iii. replace some checking of bits with ‘HasStreetType()’, ‘HasTramType()’ calls iv. do not at this stage try and handle multiple types of StreetType, TramType, assume only one of each v. this is unfortunately quite a large patch 2. extend StreetType and TramType to support multiple types of each available (only one per tile) a. support constructing multiple types b. support incompatibility when routing 3. extend features to StreetTypes and TramTypes a. catenary, with drawing support (bridges, tunnels etc) b. blah 4. what is all the scripting support doing with RoadTypes? a. ?? 5. split types in global construction menu a. does this imply also splitting the construction toolbars?  Or leave it unified and use a flag, as now? b. do this first, in a dedicated branch, to find out?