Added splice for vectors, also a remove method for paths

Added .splice() method for vectors that returns two new vectors for spliced vector and the removed items.

Also added a .remove() method to paths so that we were easily able to remove items from vectors our state based on the same paths that were used to update it.