Set minimum animation duration

This throttles user input to make things feel a bit better, and
finishes the animation if the user finishes their gesture before it
Add cairo prerendering and shaders compilation
Four column layout
Make drawer open state use darker background
When opened, stay open, and implement close
Render grid of "icons"
Render background with respect to progress
Complete buffer deallocation
Complete buffer allocation
Better separation of concerns
EGL/GLES/linux-dmabuf initialization
Correct progress for time since last input
Calculate menu open progress, adjust rendering
Do some other stuff

Gonna level with you, these early commits are just writing a fuckload of
code until it works
Add test integration with libfdicons
Initial commit