Replace empty string values with nil flag

Figured this might make life easier for those who choose to code their API to return `null` values. Empty strings just don't make sense to me

Also -- did this very quickly, let me know if you see any mistakes or would like some safe checking on flags that are mutually exclusive.