Full run testing

These are changes that resulted from doing a full run and testing.

@jiffyclub I don't think there's anything too controversial here - mostly changes to logging and checking if there are zero alternatives in the lcm.  I added a print statement for the time it takes to run a model and a year.  I think this is important enough to print for all users all the time - is that ok?