Added Renderer::Feature::RasterizerDiscard.
Doc++, minor cleanup.
Return 1 as implicit alignment value.

Previously 0 was returned, which would fail at runtime for
division-by-zero in the following sanity check:

    CORRADE_INTERNAL_ASSERT(!(offset % BufferTexture::offsetAlignment()));
Fix BufferTextureGLTest.

Somehow my NVidia now reports 256 (!) as offset alignment. Horrible waste
of memory.
Added Buffer::uniformOffsetAlignment() limit query.
Added Mesh::maxElementIndex() limit query.
Platform: include GL 4.5 and ES 3.1 in magnum-info output.
Added multi-unbind function to AbstractTexture.

More efficient (no allocation) and also more convenient than calling e.g.
unbind(7, {nullptr, nullptr, nullptr}).
Run forgotten test cases in BufferGLTest.
Implemented indexed buffer binding.

The indexed binding is allowed for only some types (atomic counters,
uniforms, shader storage and transform feedback), thus we need separate
enum for that. Because the bind() function will be used far more often
than setTargetHint(), the original Target enum is now renamed to
TargetHint and the new Target enum contains (in non-deprecated build)
only three values.

For backwards compatibility, though, we need to have all original Target
values, thus the new Target enum contains also all other values from
TargetHint, but they are marked as deprecated and (at least) run-time
checked in bind() so they aren't accidentaly used for indexed binding.
Similarly there are also deprecated Target overloads of Buffer() and
setTargetHint(). It's ugly, but hopefully will suffice for now. This mess
will be removed as soon as possible in some upcoming version.
Apparently NVidia drivers don't accept zero size in glBindBuffersRange().

Why should I specify non-zero size for zero buffer ID?