Comparison operators

Implements #2

Depends on ~~#7~~ #13 and #8, adds commit 34899a2