Implement lazy allocation scheme for video memory pools; fix sunxifbsink

Implement a lazy allocation scheme for video memory pools in which
buffers are only allocated when they are mapped for the first time. This
seems to solve the problem of being out of video memory when GStreamer
allocates a second buffer pool before freeing the first one (which hasn't
been mapped).