downloadbuffer: improve start/stop in buffering query

The start and stop should represent the currently downloading region.
The estimated-total should represent the remaining time to download
the currently downloading region. This makes it a lot more useful
for applications because they can then use those values to update
the fill region and use the estimated time to delay playback.
Update the docs with this clarification.
downloadbuffer: fix uninitialized variable
datetime: change internal implementation to mini object

And move type stuff from GstValue to GstDateTime.
info: make printing datetimes work with GST_PTR_FORMAT
gstbuffer: factor three flags-to-string loops
baseparse: Pass rate of input segment to output segment

https://bugzilla.gnome.org/show_bug.cgi?id=729701
base: use correct syntax in documentation more consistently

Previously, many constants were prefixed with # or unprefixed,
some functions and macros were prefixed with # instead of suffixed
with (), etc.

https://bugzilla.gnome.org/show_bug.cgi?id=731293
introspection: fix some minor annotation bugs

https://bugzilla.gnome.org/show_bug.cgi?id=730982
dataqueue: clear up documentation of gst_data_queue_new

The gpointer argument is passed to all three callbacks, not just one.

https://bugzilla.gnome.org/show_bug.cgi?id=731302
queuearray: fix expanding size of queue from 1

Without we would not actually expand and access
memory beyond the allocated region for the array.

https://bugzilla.gnome.org/show_bug.cgi?id=731349
tests: add unit test for queuearray expansion from 1

https://bugzilla.gnome.org/show_bug.cgi?id=731349
globaldevicemonitor: prettify header
bytereader: Use pointer instead of index access

Currently the scan uses Boyer-moore method and its performance is good.
but, it can be optimized from an implementation of view.

The original scan code is implemented by byte array and index-based access.
In _scan_for_start_code(), the index is increasing from start to end and the
base address of the byte array is referred to as return value.

In the case, index-based access can be replaced by pointer access, which
improve the performance by removing index-related operations.

Its performace is enhanced by approximately 8% on arm-based embedded devices.
Although it seems trivial, it can affect the overall performance because the
_scan_for_start_code() function is very often called when H.264/H.265 video is
played.

In addition, the technique can apply for all architectures and it is good in
view of readability and maintainability.

https://bugzilla.gnome.org/show_bug.cgi?id=731442
bytereader: Use concistant derefence method

This is minor style fix to not mix *var and var[N].
introspection: include gstversion.h in GIR generation

https://bugzilla.gnome.org/show_bug.cgi?id=703021
introspection: minor annotation additions

https://bugzilla.gnome.org/show_bug.cgi?id=731541
flowcombiner: add boxed type for bindings

https://bugzilla.gnome.org/show_bug.cgi?id=731355
flowcombiner: keep a ref to the pads we're using

Needed for use via the boxed type.

https://bugzilla.gnome.org/show_bug.cgi?id=731355
win32: add exports for new get_type() function
devicemonitor: some docs additions and fixes