Updating aromatic perception

Updated Sandeep`s algoritm to sample an additional time through all rings when an aromatic ring is recognized
solves naphtalene problems (checked for benzene, naphtalene, anthracene, corene and C7H8)

Conflicts:

	source/RMG/jing/chem/ChemGraph.java
Debugging to account for phenyl radical

C in ring with 2 adjacent neighbours breaks aromaticity
this commit will not recognize benzyne as being aromatic, need to correct with ring corrections
Fixed bug in checking aromaticity of phenyl radical
More bug fixes for aromaticity perception

No of pi electrons have to be more than two
Earlier code would break for fused aromatic ring with radical

If one of the resonance isomers has fused rings with
one ring classified as aromatic and the second as
non aromatic then a shared C can have a B bond and
a D bond C {*,B} {*,B} {*,D}
causing the valency check to fail.

To avoid this we now have additional checks
which convert the other ring to be classified as non-aromatic.

This is for academic interest only :) .... since Aaron thinks
the most stable isomers will have both rings classified as
aromatic.
Aarons update for aromaticity perception in fused rings

Earlier bug fixes did not classify anthracene as aromatic anymore.
The algorithim is now modified such that the second aromaticity check
updates a new list which is sent for reclassification by Sandeep's
aromaticity algorithim. This ensures that when one ring classification
is changed from aromatic to non-aromatic we recheck all the other rings
to see if their classification has changed. This a recurssive and
converges when the aromatic List and updated aromatic List match.
Only then we convert the aromatic species to B bonds.

This change was almost entirely written by Aaron Vandeputte .. I have
just made it more streamlined and cleaned up the code a bit.
Commenting print lines used for debugging