Implement Curve#remove() and Path#reduce().

Also have Item#reduce() recursively call #reduce() on reduced children.
Only preserve angle in Point#normalize() if direction doesn't change.
Use Path#reduce() to make sure there are no curves with zero length in boolean code.