Make lumberjack compatible with stdlib logger

The Logger from the ruby standard library will use the program name as
the message if both a message and block are missing.

The docs define `progname` as:
> Program name string. Can be omitted. Treated as a message if no
> `message` and `block` are given.

It looks like they created it this way to facilitate the severity methods, i.e.,
```ruby
def info(progname = nil, &block)
  add(INFO, nil, progname, &block)
end
```

This pull request brings lumberjack in conformity with the ruby logger, for better or worse.