Criterion

* Adds `Criterion` class

![image](https://cloud.githubusercontent.com/assets/1056838/5456084/f0aad900-8538-11e4-8c37-3b8426baf310.png)