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.
Fixed a bug: the OBPairData that records the "SMILES Atom Order" was only
set the first time a molecule was canonicalized.  A second canonicalization
would retain the original OBPairData, even if the canonical order changed.
Improved the choice of which bonds to designate as hash/wedge bonds around a stereo center.

Previously, it often made a hash/wedge on a bond to a ring or a bond to
another stereo center.  This new algorithm favors bonds to hydrogens, bonds
to terminal heteroatoms, bonds to non-stereo centers, and acyclic bonds.
Hash/wedge bonds to ring atoms and to other stereo centers are avoided as
much as possible.
Merge branch 'master' of git://github.com/openbabel/openbabel