first cut at splitting into sub-packages with unix & mirage