Prototype UIQuestionDialogBox class

* UIContext: Introduce size method.

* UIContextEventHandler: Introduce handling of SDL_KEYUP.

* UIWidget: Introduce methods: set_focus, hit_test && enum
FocusPolicy.
SDL_helpers: Introduce << operator overloads for SDL structs

SDL_Point, SDL_Rect, SDL_Color
Add NOM_LOG_CATEGORY_RENDER at WARN priority at init
Optimize nom::Gradient (use Render to Texture)

This produces a net win of between ~50..100 fps on my MacBook Air,
whereas on my much older Windows system (GeForce 6200), we see ~200+
fps win!

* Remove copy && copy assignment ctors; these are not necessary
as we do not have custom copy needs nor pointers.

* GradientTest: Introduce unit test for Gradient class.

* Texture: Add err checking for Render to Texture driver support
when creating a texture with the SDL_TEXTUREACCESS_TARGET flag.
DecoratorFinalFantasyFrame: Optimize class a bit

Render the decorator only when position or size has changed.
Fix Decorator::update bug

Decorator::update was not being called when we'd expect it -- i.e.:
when we call ::set_bounds from an instance of FinalFantasyDecorator,
because we were calling the wrong virtual method, leading us to
Transformable::set_bounds instead of the overloaded
Decorator::set_bounds (responsible for calling the derived ::update
method for us).