Mopac PM6 and PM7 now inherit from the correct class.

Came across this while writing the unit test.

The original setup had the individual MOPAC methods inheriting
from a base class MopacMol. However this was altered to avoid
code repetition. The PM3 method was correctly defined, but the
PM6 and PM7 methods are now correct.
Change the way in which libraryOrder is handled for kinetics database.

Prior to this, libraryOrder listed all the libraries used in order of priority,
but did not indicate whether they are Seed mechs or reaction libraries.

Now, indicate this by setting libraryOrder as a list of tuples in the format
('library_label', LibraryType), where LibraryType is set to either 'Reaction Library'
or 'Seed'.  That way we can avoid trying to double generating reactions for the 'Seed'
library type (since they have already been added to the core).  This also gives us
more flexibility for treating the seeds and reaction libraries differently.
Changed rmg.reactionGenerationOptions attribute to more relevant speciesConstraints name

For matching with the generateSpeciesConstraints name in the input file.  Makes it
less confusing for the programmer.
Add species constraints checks to input species, seed, and reaction libraries.
Add additional flag `allowed` to generatedSpeciesConstraints.

The `allowed` flag in generatedSpeciesConstraints can be set to a list with
'input species','reaction libraries', or 'seed mechanisms' (or any combination
of these categories).  The species from the specified categories can bypass and
ignore species constraints given in the input file.  Note that this means
RMG reaction templates must still obey the constraints.
Add to the documentation regarding species constraints.