Got State file Input and Output working

I hooked Nathan and Albert's statefile code in with the application and
wired up a few new command line arguments. We can now read and write
from/to a statefile successfully. The following command line arguments
were added:

--name : Specifies the name of the simulation run
--version : Prints out versioning information
--steps (-n) : Overrides the number of steps to run
--state_interval (-I) : The number of steps between saves

Also, when you want to run a fresh simulation, call the program and give
it a config file (*.config) to load from. If you want to load from a
state file (*.state) just run the program and give it the state file
instead.

The only issue I have is that a simulation run for 1500 steps will have
slightly different numbers than a simulation run for 500 steps loaded
from the state file saved at step number 1000. I am not sure if these
are supposed to be the same, but I believe they should be since we are
using the same seed values.