Constructable transit tubes!

You can now build lifelike public transport networks, or even a sci-fi themed rollercoaster!

List of changes:
* There is a new transit tube dispenser, similar to the disposal pipes dispenser
* It dispenses construction-stage transit tubes, which take four seconds and a wrench to become solid
* Tubes can now be deconstructed with 3.5 seconds and a wrench
* Construction-stage tube pods can be dragged into a station to be loaded
* Stuck pods can be pried from the tube with a crowbar
* text2dir_extended & dir2text_short are now global procs

This was somewhat tested and should be relatively not completely broken, but any further testing is welcome.
I'm concerned about the possibility that the unwrenched tubes might become barricades, so I'm very open to suggestions about how to avoid that.

This PR does not edit the map. Once it is merged, I'll update the changelog and add the dispenser to atmos.
This section of code is pretty ugly. What does this code do? And the code under this should probably be more object-oriented. make the type of construction tube it drops dependant on a var of the object instead of doing ugly typechecks.