Added arrows, removed ad hoc impl, added ->> operator