- add two new methods - prefixedBy: and suffixedBy: to handle the empty prefix/suffix correctly
- add comments to beginsWith: and endsWith: referring to the two new methods
The problem is that there is client code which depend on the (wrong) implementation of the beginsWith and endsWith methods.