Add buffering to video renderers

This is follow up from #870

- It adds buffering to video and overlay renderers. This way video player can deliver frames and overlays to RenderManager without blocking on every cycle. The player just fills the buffers and leaves scheduling to RenderManager

- Due to buffering video player needs a more advanced algorithm for dropping in case of player gets late. It has to look at the end of the queue right after decoder and count already dropped frames against lateness.

- I have analyzed and tested this extensively on Linux where it showed a huge performance gain. 

- In this PR buffering is activated for software rendering and DXVA

- OMXPlayer is adopted to the changes in order to make it compile. Other players than dvdplayer and OMXPlayer need to be adopted.

- Needs testing on Darwin and iOS.