funnel: Handle end of stream event on sink pad

Handle end of stream events on sink pad. Check all the sink pad
has received eos before forwarding to source pad.

Fixes : https://bugzilla.gnome.org/show_bug.cgi?id=727945
basesrc: Make sure to always hold the LIVE_LOCK when going to the flushing label

https://bugzilla.gnome.org/show_bug.cgi?id=728596
value: Use an unsigned 64 bit integer as a mask

We shift the mask to the right later and shifting the result
of shifting over the sign bit is undefined.
bin: Don't left-shift into the sign bit, the result is undefined
bin: When going to READY make sure to always deactivate pads

We might not have reached PAUSED yet because of an async error,
but nonetheless we want to make sure that the pads are always
deactivated in READY state.
docs: add docs for various GstPad macros

https://bugzilla.gnome.org/show_bug.cgi?id=723652
buffer: Only set TAG_MEMORY if the memory has been replaced

Currently we set TAG_MEMORY as soon a resize changes the size of one
of the memory. This has the side effect that buffer pool cannot know if
the memory have simply been resized, or if the memorys has been replaced.
This make it hard to actually implement _reset(). Instead, only set the
TAG_MEMORY if one or more memory has been replaced, and do a light
sanity check of the size.

https://bugzilla.gnome.org/show_bug.cgi?id=727109
docs: remove outdated and pointless 'Last reviewed' lines from docs

They are very confusing for people, and more often than not
also just not very accurate. Seeing 'last reviewed: 2005' in
your docs is not very confidence-inspiring. Let's just remove
those comments.
Revert "docs: add docs for various GstPad macros"

This reverts commit d17438d5fd321daec4adbeb28a8fb5d5e07298dc.

This commit featured the wrong author, sorry.
docs: add docs for various GstPad macros

https://bugzilla.gnome.org/show_bug.cgi?id=723652