Split Name Validation for Container and Queues

Container names are now validated with the valid_container_name and
queue names with the validate_queue_name.

Container naming unlike queue naming also supports the 'root' container
which can be addressed by '$root'.  The changes to container name
validation now support an exact match to '$root'.
Added '$root' container name test

Added a simple check to verify that naming a container with '$root' won't raise
and exception.

Added another one to verify that '$roots' (simple variation) will not be
permitted, i.e raise and exception