Whitespace
A place for string utils
Dumb bugs
Add some missing type predicates
Namespace comment
Add a complement function