Update family.py for new species multiplicity and search for spin
allowed reactions

-__generateProductStructures uses angular moment addition theorem to
find spin allowed reactions, further improvement and validation might be
required

This commit originally introduced merge conflicts, which were later removed:
  Subject:	Remove merge conflicts
  Author:		Beat Buesser <bbuesser@mit.edu>
  Date:	Mon May 19 2014 15:26:21 GMT-0400 (EDT)
rwest merged the two commits.
Change toAdjacencyList() to new adjacency list style
Add multiplicity label to saveEntry() for transport libraries.
Add multiplicity label to saveEntry() for thermo libraries.

And set printMultiplicity in toAdjacencyList() to False to not print
multiplicity as part of the adjacency list
Add multiplicity label to saveEntry() for forbiddenstructures.py
Replace strip() with split() to read adjacency lists in kinetics library

Since the introduction of the multiplicity inside adjacency lists for
the kinetics libraries we have to split the multiplicity line
(multiplicity n) into its two components where the second component
([1]) is the actual multiplicity number.
Set printMultiplicity label in toAdjacencyList() explicitely to True

This makes it easier to understand the difference to other saveEntry()
functions
Define type of maxMultiplicity in fromAdjacencyList()
Prepare molecule.py for new adjacency list style

todjacencyList():
-pass printMultiplicity argument actually to toAdjacencyList() from
adjlist.py

fromAdjacencyList():
- remove newStyleAdjacencyListMatcher(), all adjacency list are now new
style
- remove maxMultiplicity argument, multiplicity has now to be
explicitely defined
Remove maxMultiplicity argument

- multiplicity has now to be explicitely defined
Modify adjlist.py to read and write the new-style adjacency list.
Updating examples with new adjacency list style
Updating existing unit tests for new adjacency list style
Remove maxMultiplicity argument

- multiplicity has to be defined for each entry which makes
maxMultiplicity unnecessary
Updating existing unit test for new adjacency list style
Update fromRDKitMol() for the new adjacency list style

- this also updates all the functions based on fromEDKitMol() like
fromSMILES()
- all these molecule input functions are based on the assumption of
maximum multiplicity is the most stable multiplicity
(multiplicity=radcial count + 1)
Change treatment of missing lone pair card

for molecules a missing lone pair card (L) leads to the assumption that
there are no lone pairs, therefore L0

for groups a missing L leads to the assumption that it was not defined
therefore None
Update existing unit test for new adjacency list style
Prevent species generation from crashing if molecule is None and add
multiplicity to class representation string
Update existing unit tests for the new adjacency list style