Additional hard coded constrains for Intra_Diels_alder2
Before reacting the code will see how many bicyclic nodes are made in the reactants and forbid the reaction if this value is larger than 2.
Added a new resonance function that should avoid dubble counting of aromatics (e.g. napthalene) and other rings that are characterized by the
following bond structure single-double-single-double... with number of single bonds = number of double bonds
Few modifications:
1. Instead of printing rates for forbidden reactions, just omit the reaction
2. Hard coded double counting of some intra H abstractions
Test to exclude sterically hindered intra H abstractions and intra disproportionation reactions in cyclics.

This problem arises because in RMG we represent species only as 2d
chemgraphs and it hits rules which would not be possible if the 3d structure
was taken into account. For now we deal with this by hard coding these
reacions out.

Conflicts:

	source/RMG/jing/chemUtil/Graph.java
	source/RMG/jing/rxn/ReactionTemplate.java
Merge branch 'master' of https://github.com/GreenGroup/RMG-Java

Conflicts:
	source/RMG/jing/chemUtil/Graph.java
	source/RMG/jing/rxn/ReactionTemplate.java
 Flagged out part of the code that didnt do what it was supposed to do
 It tried to find 2 adjacent radical sites and make a double bond between them
 However, there is no cycling over the different resonance isomers
 and nodes are not updated after they have been changed making the new graph identical to the first graph
 A working code doing the same has been written long before in the generateResonanceIsomersFromRadicalCenter() subroutine
 but was flagged out due to wrong thermo for birads and unwanted reactions
Skip checking for the stablest resonance isomer once thermo for initial graph
is obtained from a thermo library.
Bug-fix: resonance isomers always include the original molecule when they exist and only then
This made the new conjugated ring code to add various similar species, as in this case only the resonance isomer
was added to the resonance isomer vector.

This also relates to previous commit: when resonance isomers existed, it was checking all of them for lowest thermo
unrelated to the fact if the original thermo was obtained from a library.
New change that might speed up the code a little bit in cases a lot of non-resonating radicals are present.

Old code always added the radical to a new resonance vector, while now this is only done when a first resonance isomer is found.
This can help bypassing some checks if(resonanceIsomers = null) speeding up the code and requiring less mem.