Make it possible to forward declare struct json_t

This allows e.g. to use json_t in a header file that doesn't include
jansson.h:

    struct json_t;
    typedef struct json_t json_t;

    json_t *foo(json_t *bar);
Merge branch '2.4'
Compress bz2 doc tarballs with bzip2 instead of gzip

Fixes #99.
Enable gcc specific flags in tests correctly

... and fix issues found.
Don't use -Werror by default

It may be problematic when compilers add new warnings over time.
./configure && make should always just work.
Merge branch '2.4'
Enable -Werror in Travis builds
Merge branch '2.4'
check-exports test: Filter out symbols that start with an underscore

These are usually internal to libc, and such symbols are exported in
the shared library on some platforms.
Merge branch '2.4'