Document the registered process in the .app file

This helps systools detect registered name clashes
Support printing iolists with ~s
Support variables as arguments to lager:info and friends

As long as *one* of the arguments is a literal, lager can figure out
what you're trying to do and (re)arrange the arguments as necessary.
Also allow list comps, function calls and record fields as lager arguments
Fiddle with test timeouts to accomodate slower machines
Merge pull request #103 from basho/adt-lager-registered-procs

Empty registered processes section in lager.app.src.
Fix some bugs uncovered in review
Merge pull request #54 from basho/adt-variable-arguments

Parse transform can't handle `Attr' as a variable
Prettyprint webmachine and cowboy error_logger messages
Fix cowboy error handling
Remove broken code for stripping square brackets
Merge pull request #108 from basho/adt-iolist-printing

Lager doesn't print iolists with ~s right
Improve lager_console_backend to support non-atom output log levels.

This supports forms such as "!notice" for configuring the output
log level (using the config handling changes from 7aa316902e2d).
Merge pull request #112 from ewanmellor/non-atom-levels

Improve lager_console_backend to support non-atom output log levels.
Bring some duplicate code together around the loglevel handling.

Add add_trace_to_loglevel_config and update_loglevel_config.  These two
handle most of the updates to the loglevel config item, including the
update of the overall logging mask.

This makes minimum_loglevel private.

This doesn't change any behavior -- it just a tidy-up.
Add an update to the global loglevel when a new handler is installed.

This fixes a bug where messages were incorrectly discarded if the new
handler is using log levels that are different from those in use by handlers
that were set up at start-of-day.
Don't assume the supervisor is a registered process, it could also be a pid.
Make the tests pass, show the local name whem the supervisor is {local, Name}
Allow crash_log option to be 'false' as well
Replaced another use of element(2,Pid). Added some tests with somepid instead {local,name} as supervisor reference