now with const goodness to indicate that the array of pointers is not changed
switch to nullptr from NULL
don't reimplement library functionality, just because strptime doesn't exist everywhere doesn't mean we should re-invent the wheel. Particularly when std::get_time does