Changed cursor code to use a range instead of a position
Renamed enum declarations so they dont pollute the namespace
Changed the wire protocol for ops