Merge branch 'feature/scenes' into develop
Update readme to match the website

http://getvoid.herokuapp.com/
Add Void.Graphics.Context class
Make the graphics context in Void.Window public instead of private
Add a dummy context

A dummy context that can be used for stuff that requires a context.

It's nothing special — it's a regular context bound to an invisible
dummy window.

Effects, polygons and other stuff depend on this.
Fix crash when the children of an entity are modified while it's drawing or updating

- Make the children read-only
- Add locks around the removal, addition, and access of the children
- Remove the AddChild method for clarity
  - Probably should just allow specifying multiple parents instead or
  something
Fix garbage collection issues and window graphics contexts not being created until opened

- Hopefully fix garbage collection not working at all
  - Make Void.Entity, Void.Windows and Void.Graphics.Context IDisposable
  - Use System.WeakReference for the static list "All" in Void.Windows
  and Void.Entity
  - Remove the main loop from Void.Graphics.Context.Dummy
- Fix window graphics contexts not being created until they are opened
  - The window and the context are now created in the constructor
  instead of after the Visible property is set to true
Fix not being able to deactivate contexts
Fix invisible windows updating and drawing

Not only it's unnecessary — it also prevents us from making the dummy
context active in any thread since it's constantly active in the thread
of its window.
Deactivate the dummy context after its creation

Deactivate the dummy context after its creation to free it up for other
threads.
Fix freezes with graphics contexts

- Add locks to prevent multiple threads from trying to do OpenGL stuff
at the same time
Fix windows on Windows

Moved the window and context creation from the window constructor to
the window's main loop thread. We now wait in the constructor until the
graphics context is created.
Clean up garbage collection related stuff

Don't implement IDisposable anywhere since nothing here actually handles
unmanaged resources.
Add empty Polygon class
Add vertex and element buffers to the Polygon class
Add vertex and index lists to the Polygon class
Make the Polygon class drawable

It doesn't work properly yet though. A link needs to be made between the
vertex data and shaders. And we don't have shaders yet.