Add a generator for function deprecation messages.
Extend warnings for desired caps
Send deprecation messages to the log
Made warnings only be emitted once.

Also renamed produceDeprecationWarning
Emit deprecation warnings at the end of sessions
change 'emit' to 'log'
Correct deprecation tests for messages only logged once
Log messages immediately, warn if any messages were logged