docs: Fix typo in the SIMD matrix description
docs: Improve the description of graphene_matrix_t

Note the memory layout, and the fact that the contents of the matrix
type are opaque and should never be accessed directly.
docs: Note the layout for affine conversions

This should clarify which values we provide, or consume, when converting
a graphene_matrix_t to, or from, an affine transformation matrix.
Add a control file for Travis CI

May be useful, one day.
alloc: Fix pre-condition checks

We just return NULL if we're asked to allocate 0 bytes. This simplifies
the overflow check later on.
build: Use our own macros

Based on the xorg-macros, but cut down considerably in size, and only
for the flags that make sense for Graphene.
Silence compiler warnings

In the benchmark code.
build: Fix configure arguments for distcheck

We don't have --enable-maintainer-flags, and we want to force the
generation of the introspection data.
matrix: Rename affine → 2d

We already have graphene_matrix_is_2d(), so the conversion functions
from and to affine transformation matrices should follow that naming
scheme.
build: Restructure scalar typedefs in graphene-config.h

We use the `/*< private >*/` trigraph, but the parsers have had troubles
in the past if the definition of a structured type sits on just one
line.
Rename GRAPHENE_BENCHMARK to GRAPHENE_SIMD_BENCHMARK

Make sure that it's self-evident that the symbol is only for
benchmarking SIMD implementations.
build: Remove an unnecessary warning

The -Wbad-function-cast warning gets tripped by the perfectly legal
atomic operations in GLib.
simd4f: Fix cast for cmp_eq and cmp_neq operators

We are casting the first operand, not the result.