Add IWhen interface, update Readme