Use a single macro to implement the HasXXX classes
Undef min/max...
Clean up the stringToArgXXX functions
Update the README
Use Unicode on Windows
Update .gitignore