Continued Resource::Manger cleanup (JIRA RIPD-372)

 - Incorporates review comments from previous commit.
 - Increases Resource::Manager unit test coverage: verify a dropped consumer is blocked for a while.

I just happen to have Effective C++ 3rd edition right here - and in Item 3, he neither discusses nor exhibits any const local variables, and all his arguments talk about const references and methods!  Nor can I find a single example of a const local variable by flipping around the book, though I'd welcome a counter-example.  Nor do I ever see him consting local variables in code examples or lectures.

So if you take Meyers as an example, you should never be using const on local variables!  :-)

The compiler has no need for your const marker to be able to tell if a local variable is in fact changed.  The "reader" *is* the "programmer" - but 95% of the time knowing that a variable is const is a completely useless fact to the programmer.

For example, 95% of our non-reference parameters are in practice not changed - but we put a const not even 10% of the time.  Why don't we do it every time?  Because it's super spammy and tells us nothing.

For example, why don't we write:

void setEnabled(bool const enabled) 
{
   enabled_ = enabled;
}

? 

Because it has no documentary advantage and clouds the code with unnecessary bulk.  The same is true of this const.  The scope of this variable is a few lines - it is used twice - the const marker is simply spam and is guaranteed never to help anyone process anything.

I won't mention this in future but I personally will follow Scott Meyers's example of being super careful about const on methods and reference parameters and never using them on local variables...