merge confab into openbabel
Merge branch 'confab' of https://github.com/cowsandmilk/openbabel into confab
Porting commits from the original Confab:

torlib.txt, rotor.cpp:
* Using Graph Symmetry, remove symmetrical torsions.
* Reduce the torsions by incorporating graph symmetry. Note that torlib.txt trumps this in the case of CX3 where X is a halide
* Force Forcefield setup always. IsSetupNeeded() fails silently in some cases
Remove confsearch.h. Unused.
Add basic test for QCP align.
Turn confab into an Op.
Add confabreport output format used to replace 'calcrmsd' executable in original Confab. Tidy up opconfab code, and suppress writing out of the original molecule.
Fix potential crash from parsing output format for MIME type.

Heads-up from Mayhem project and Daniel Leidert.
Fix minor syntax warning with Clang -- clarify sign inversion.
Fix invalid sscanf format string and a variety of minor bugs.

Bugs found through Coverity Scan.
Fix InChI reading bug (segfault) reported by Fredrik Wallner on 11 Apr. A call to DeleteHydrogens removed hydrogens referred to in the stereo section. I've moved it past this.
Merge pull request #15 from baoilleach/master

Bugfix for segfault in InChI reading reported by Fredrik Wallner on list.
Final changes to make confab ready for merging:
1. Revert changes to IsSetupNeed() as asked by Geoff
2. Remove calcrmsd and confab executables
Merge branch 'master' into confab
Merge branch 'master' into confab
Remove spurious trailing s in include line.
Fix warning with sscanf format specifier (no decimal needed).

Also fixed reading TDDFT data from G09 files.
Change header to provide Eigen2 compatibility.

Thanks to Craig James for the heads-up.
Fixed two bugs:

1. A nitrogen-containing aromatic rings could canonicalize two different
ways when they were canonicalized as part of a molecular fragment.  In
setting up the initial atom graph invarients, implicit H was ignored on
aromatic nitrogens, so the two nitrogens in in c1ncc[nH]1 were not
distinguished and it could canonicalize as either c1ncc[nH]1 or c1[nH]ccn1.
This only occurs when using a bitmap mask to create a fragment SMILES
(otherwise the two nitrogens are distinguished by other bonds).

2. A segfault that happened when the same molecule was canonicalized
multiple times.  A StereoFacade object is created in CanonicalLabels, then the
OBGenericDataType::StereoData that it points to was deleted causing a
segfault the second time a molecule was canonicalized.