log: error code generation support

error code and message are generated at compile time by reading a json
file which contains information of elements for each error code.  This
framework provides error handling and ability to do more cleaner log
messages to users.

error-codes.json file contains error description is below format

{
    "ERR_NAME": {"code": ERR_NUM,
                 "message": {"LOCALE": "ERR_MESSAGE"}}
}

At compile time autogen.sh calls gen-headers.py which produces C
header file libglusterfs/src/gf-error-codes.h.  This header has a
function

const char *_gf_get_message (int code);

which returns respective ERR_MESSAGE for given ERR_NUM.

Change-Id: Ieefbf4c470e19a0175c28942e56cec98a3c94ff0
BUG: 928648
Signed-off-by: Bala.FA <barumuga@redhat.com>
Reviewed-on: http://review.gluster.org/4977
Reviewed-by: Niels de Vos <ndevos@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>