simd4f: Add merge_w() function

Merges the first three channels of a SIMD vector with the given floating
point value for the fourth channel.
simd4x4f: Simplify the perspective() function

Use the newly added merge_w() operator for SIMD vectors to cut some
lines out. The function could be unrolled differently by using a
transposed matrix and accessing the column vectors, but it would need
to be benchmarked first.
docs: Add some more documentation to graphene_matrix_t
docs: Add more matrix documentation
docs: Finish documenting graphene_point3d_t
simd4f: Add merge_low() operator

Takes the two lowest channels of two SIMD vectors and merges them
together in a new SIMD vector.
vec4: Change the vec2,3 initializers for vec4

Initializing a vec4 from vec2 and vec3 should not leave the value
of the third and fourth components undefined.
docs: Finish documenting graphene_vec4_t