Changed Condition to match the implementation in SimPy
Made Condition abstract and added AllOf and AnyOf subclasses