Fixed operation when the path buffer was already empty.
Cleaned up some of the insert bits to make them more clear in class path.
Added append member function.
Actually made amend make sense.
Initial erase implementation.
Added some tests and fixed issues with erase.