Workaround for missing std::source_location in apple-clang
On macOSs apple-clang, libc++ may not include std::source_location or std::experimental::source_location. This MR adds a simple implementation (borrowed from the standard library) that is used if no headers are found. Fixes #249 (closed)