Multi-Context Systems as a Specification Framework for Complex Reasoning Systems