Fix two problems happening during deserialization causing command line defines to be reported as being built-in defines:
* When deserializing SM_SLOC_BUFFER_ENTRY we need to call setHasLineDirectives in the same way as we do for SM_SLOC_FILE_ENTRY.
* When created suggested predefines based on the current command line options we need to add line markers in the same way that InitializePreprocessor does.