replaced DicomReaderResult enumeration by ReaderResult class in most places to extend error handling
added DicomFile.TryOpen methods that do not raise exceptions but return ReaderResult values instead to notify the caller about errors