Operations for adding and removing lists

These operations work on the level of top level lists only
Operational transforms for adding and removing lists

This handles adding lists of the exact same range and removing the same list or
different lists. Adding lists of intersecting ranges returns and
unresolvable conflict atm.
Tests for add and remove list operations