Bot port from /tg/

Changes:
1) Ports bots from /tg/, making them more reliable in general. Should include some new functions for specific bots, but overall they'll just be more reliable. Also fixes Beepsky refusing to auto-patrol.
2) The AI can now control bots through the "Access Robot Control" verb.
3) Air alarms in the Syndicate station are now hidden from the central atmospherics control computer.
4) Vending machines now go back to the main menu when you pay.

There's one issue with the bot port. The floorbot and mulebot do not announce when they run out of tiles/arrive at their destination due to differences in say() code with /tg/, which prevents objects from talking into radios. It's not worth porting over that entire code change just for this though, as the secbot and medbot communicate through the security hud and health hud respectively.