Add additional "reRun" method to Slim

No I haven't created any unit tests -- yet!

Just wanted to see if you could take a quick look at this change.  Essentially, this is to "reRun" Slim on a different HTTP method and URI so that you could call additional routes.  This code assumes that Slim has already been "run" and now it's being run again in the same request.

I had mentioned this a couple of months ago, the most common use case I can think of (mine) is when you want to call your own RESTful API from you own Slim based application... without creating a new and unnecessary HTTP request to your own server.  This has a lot of benefits.  The first, is speed, because some overhead is eliminated.  The second, is that exceptions from the reRuns will now bubble up.