Added a new FutureTask type.  This one executes either from the .run() function or the .get() function (which ever occurs first).
The thought is that once you call .get(), if it has not already started executing the task, we have a thread available to execute it now.  So why just block the thread waiting on the executor, and instead not just execute the task immediately.
This makes sense if you need the result of this before you can continue execution (and the executor may be filled with other, possibly lower priority, tasks).
I decided this was a better name for this new FutureTask type
Merge branch 'master' into unstable_staging