move header file into namespace
Merge branch 'feature/namespace-header-file'

Breaking change: you must now change your include calls to locate api.h
via <micros/api.h>

* feature/namespace-header-file:
  move header file into namespace
release v0.3.0
add opengl 3.2 quick reference card
move old micros readme to separate file
starting "ticks"
README indent
add release build type
sound check
loading shaders

Introduce reference types for shaders and programs. These only have
moving semantics as they represent a handle to a unique resource.

Note: vstudio 2013 does not support defaulting move constructors and
move assignment operators, so we have to put our own defaults there.
shaders require VAO and VBO in GL 3.2

Introduce resource references for buffers and vertex arrays.

These objects are unique resource references, and only support moving
semantics.

Also introduce With...Scope objects, to activate/enable various
states (program, buffers, blending mode) easily.
asynch loading of shaders from filesystem

Move fragment + vertex shaders into separate files.

- Shaders are loaded asynchronously. The IO part is done in a background
thread, and - the shader definition done in a task of the display
thread.

- split shader loader away from main.cpp
experimenting with futures to detect file changes

i'm not too happy about this. The standard library does not provide
functions to wait on more than one future.

Furthermore the change notification we want to wait on we also want to
abort waiting for. Since futures when destroyed always wait, this
requires a signaling mechanism to abort them.