This patch implements loading Molecules in the XYZ and PDB formats by instantiating the appropriate subclass of Avogadro::Io::FileFormat
based on the file ending.
Additionally, some error handling code was added so Kalzium does not crash when loading a molecule fails.
Note that this patch requires C++14 since make_unique is used. Should it, for some reason, not be possible to include C++14-only code into Kalzium,
this can be worked around by constructing a std::unique_ptr with raw new.