Making canPerform chainable with a .when() function on the canPerform observable - making it possible to have multiple clauses!