Remove 'pure' attribute from 'arakoon_cluster_get_last_error'

The 'arakoon_cluster_get_last_error' procedure returns data through
'out' pointer arguments. This is considered a side-effect by GCC, and
due to the 'pure' attribute on the prototype, it can assume the values
aren't changed.

This commit removes the 'pure' attribute accordingly.

Some demo code::

    #include <stdio.h>
    #include "src/arakoon.h"

    void test(const ArakoonCluster * const cluster) {
            size_t len = 0;
            const void *data = NULL;
            arakoon_rc rc = ARAKOON_RC_SUCCESS;

            rc = arakoon_cluster_get_last_error(cluster, &len, &data);
            printf("rc = %d, len = %d, data = %c\n", rc, len, data);
    }

Compiler::

    $ gcc --version
    gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8)
    ...

Before::

    $ gcc -O3 -S -o - demo.c
    ...
    subq        $24, %rsp
    .cfi_def_cfa_offset 32
    leaq    8(%rsp), %rdx
    movq    %rsp, %rsi
    movq    $0, (%rsp)
    movq    $0, 8(%rsp)
    call    arakoon_cluster_get_last_error
    xorl    %ecx, %ecx
    movl    %eax, %esi
    xorl    %edx, %edx
    movl    $.LC0, %edi
    xorl    %eax, %eax
    call    printf

After::

    $ gcc -O3 -S -o - demo.c
    ...
    subq        $24, %rsp
    .cfi_def_cfa_offset 32
    leaq    8(%rsp), %rdx
    movq    %rsp, %rsi
    movq    $0, (%rsp)
    movq    $0, 8(%rsp)
    call    arakoon_cluster_get_last_error
    movq    8(%rsp), %rcx
    movq    (%rsp), %rdx
    movl    %eax, %esi
    movl    $.LC0, %edi
    xorl    %eax, %eax
    call    printf
    ...

Change-Id: I40c96b153f06c48b0b98ff0dae57752423174b47
Fixes: ARAKOON-366
Reported-by: Bastiaan Stougie <bastiaan@amplidata.com>
See: http://jira.incubaid.com/browse/ARAKOON-366