Use a load guard and put setup code at the top-level

Now a BadWhitespace highlight is always created independently of the
filetype and the configuration of the file you start with.  Fix error
about missing color.
Suppress highlighting empty +/- columns of patches

You can now suppress highlighting of the first (and second in case of a combined
diff) column for selected filetypes, by setting the following variable

    let g:bad_whitespace_patch_filetypes = ['diff', 'git']

The given value is the default.
Introduce a BadWhitespace highlight link

If you like to toggle colors by re-linking, you can now specify the
default highlight for trailing whitespace in:

    let g:bad_whitespace_color_default = 'BadWhitespaceDefaultState

The given value is the default link target if you don't create that
variable.