Add sensitivity option during simulation within the solver.

SimpleReactor now has keyword 'sensitivity', which can be set to
True in the input file in order to run sensitivities.  All species
sensitivities will be saved to an external xls file simulation_final.xls if
'saveConcentrationProfiles' is set to True under 'options'. Sensitivity
is run after model generation is completed on the final model.

Evaluation of the jacobian is called at every iteration when sensitivity is on,
otherwise the jacobian is not corrected often enough and causes sensitivity to
be inaccurate.  This makes running sensitivity very slow.  A faster solution
is necessary.
Preliminary unit tests added for solver jacobian and computeRateDerivative functions.

Testing the jacobian and d(dy/dt)/dk function evaluations within the solver
against finite difference numerically calculated jacobian and rate derivative.
Sensitivity coefficient unit test incomplete but left as a template.
Allow user to choose specific species sensitivities to save.

This prevents from saving gigantic excel files of all the species.  The user
needs to set a list of the species names for the flag 'sensitivity'
for each simpleReactor object within the input file.  'saveConcentrationProfiles'
must still be set to true for excel sheet to be created.  Sensitivity results
can be found in additional sheets in 'solver/simulation_final.xls'.
Save concentration profiles and sensitivity coefficients to csv files.

Excel .xls files are more fussy to deal with and can only save up to 256 rows.
Python also has native csv support, making it easier to read and write to them.
Set a sensitivity threshold value to prevent writing all sensitivities to disk.

Stores the normalized sensitivities in memory and only writes them to csv if
the maximum normalized concentration sensitivity for a particular reaction
is above the user specified threshold, or a default value of 1e-3.
Previously, all reaction sensitivities were written to disk, but this creates
csv files which are far too large. Adding this additional option matches
CHEMKIN's sensitivity module as well.
Added stand-alone sensitivity analysis module.

Can run sensitivity analysis for individual reaction systems using an RMG
input file without having to generate a model through RMG.
Merge branch 'sensitivity'
Added minimal example with sensitivity analysis.
Do not fail with undeterminable kinetics error when fetching AllKinetics.

RMG was failing on general exceptions when kinetics are undetermined for
templates generating when getAllKinetics was set to `True`.
Reaction template for group additivity was being estimated using rate rules
and failing to find kinetics. Added try block to avoid this.