Creates a TmpConfig helper

To help test the output from BBConfig which varies alot based on the
contents of a config file, this helper creates a temporary directory and
config file using the desired contents.

Has a simple accessor to get the dir back to pass in as the :directory
option of BBConfig.new and a #close method
Extracts default client out as side effect

A side effect of #client_name is raising an error if a default config
was not specified in the config.

For the only use in the `config` command we can make it safer because we
do not want the side effect (raising an error) just getting the value
from the config if available.
Makes #client_name safer for config command

We no longer need to use #client_name within any of the config commands
but this changes it to return nil rather than raise if the code is
reintroduced.
Updates command to run in output

"brightbox config" should be used in preference to "brightbox-config"
Specs and breaks down BBConfig#account

BBConfig#account has been dried up and a #default_account method
extracted.

All of the methods have been grouped together rather than being randomly
scattered about.
Tests BBConfig#client_name with options support

Added the means to pass in client_name and account to BBConfig as
options.