Don't return pointer to principal

Functions that read a run, lumi, or an event principal  fill in the principal that is passed in by reference.  These functions no longer create the principal. Therefore, there is no need for them to return a pointer to the principal.
With this pull request, these functions now return void or bool, as appropriate.
Also, the functions readAndCacheRun and readAndCacheLumi were modified to fill in the principal rather than creating it, and were renamed readRun and readLuminosityBlock respectively, because the caching of the principal
has been moved outside these functions.

The changes outside the framework are just minimal adaptions to the framework changes.

These changes have been tested by runTheMatrix.py -s and unit tests.  The full runTheMatrix.py is in progress.