Consistency
Don't allow double removal
Use () to not do math operations on dereferenced pointer (and test)