MissionConditions component

Fixes #392 and #389