Add remove num objects after object method in NPLinkedList

Previously there were two methods that did something similar: one to
remove a number of objects after an object and another to do the same
but before an object.

These were removed and replaced with this new method.  It removes a
number of objects starting at a relative object and going either forward
or backwards.

A bunch of little quirks and bugs were fixed to handle various edge
cases.
Add spec for new removal method in NPLinkedList

Added a spec for testing the new linked list removal method which allows
you to remove a number of objects starting at a given object and moving
either forward or backward.