Minor cleanup

- Enabled NuGet package restore

- Miscellaneous cleanup
Begin work on the scene system

- Overhaul Entity class

- Remove IDrawable and IUpdateable

- Remove the Window property from entities due to limited use

- Add a Scene class

- Change the sample to work with the scene system
Minor cleanup

- Fix some inconsistencies in the coding style

  - Change spaces to tabs in some places

  - Add a space before the braces in some if-statements

- Rename Void.Window.RootScene to Void.Window.Scene

- Make Void.Entity.All read-only

- Make the Void.Window.Scene setter public instead of private

- Add a call to base.Draw in Void.Samples.Windows.Background.Draw
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.
Improve an unclear comment about the dummy window main loop
Get rid of the broken useless Window.AllList unit test
Fix freezes with the dummy graphics context

Aborting the main thread of the dummy window might leave a lock active in
OpenTK which causes all future operations on the dummy context to fail.

We were aborting the main thread in the first place because we didn't want
it to keep the application open. Made it a background thread now instead.
Add empty Effect class