Further improvements for latrunculi.

AnimLight: rename light_on member to initially_on and make it const.

CanvasPoint, CanvasRect: move from Base unit to HUD unit.
CanvasSize: move from Base unit to Engine unit.

Color: rename to RGBColor, keeping Color name as typedef.
LabColor: move from Private unit to Base unit; make suitable for downstream use.
XYZColor: revise for new RGBColor/LabColor interface.

Conversation: add subscribe and unsubscribe methods.
ConversationMessage: new "ConversationEnd" message, generated by the OSL.
OSL: add ConversationMessage support; remove broken pre-subscribe checks.

Object: add schedule_destruction method.

Time: add seconds and minutes methods.

LGMulti: add specialization macro for downstream use (inheriting from a specialization defined here).

Makefile: include all units except Script in the OSL.
Door, Player, SoundSchema: add guards for code that the OSL shouldn't access.