Added `SDL2Renderer` header with `SDL2Renderer` class extending `Renderer`
Overrided `{clear, present, drawingColor}` methods from `Renderer` in `SDL2Renderer`
Added `Color` arument to `SDL2Renderer::drawingColor`
Added `SDL2Renderer` source file
`SDL2Renderer` now publicly extends Renderer;
All methods of SDL2Renderer are now tagged as public
Included "SDL" header;
Added protected `renderer_handle` alias for `shared_ptr...`
Added protected field `_handle`
`SDL2Renderer` now requiers `weak pointer to SDL2Window` in constructor
Added empty definition of `SDL2Renderer` constructor (only calls base constructor)
Added missing header
Added some more empty definitions
`HandleProvider` is now friend of `SDL2Window` (how cute!);
Added `SDL2Window::HandleProvider` with:
  - `handle` typedef of `weak_ptr..`
  - `provide` method
Added definition of `SDL2Window::HandleProvider::provide`, which
  returns a handle to passed in arg window
`SDL2Renderer` constructor now fills `_handle` with `SDL_Renderer` by:
  - "providing window handle"
  - "creating new accelerated renderer from window handle"
  - "setting a release resource method";

`SDL2Renderer::clear` now clears renderer by calling `SDL_RenderClear`;

`SDL2Renderer::present` now presents renderer by calling `SDL_RenderPresent`;

`SDL2Renderer::drawingColor` with `color` argument now sets new drawing color,
  by calling `SDL_SetRenderDrawColor` with `_handle(aka .get())` and colors from argument