Large patch, many significant changes

IDE removed, engine build re-added. IDE will be implemented using Lua API
or as a sub-component of the engine build.

Rendering working, but still unfinished. Need to implement draw parameters
for situations where GL_ARB_shader_draw_parameters is unavailable. Lots of
tweaking and testing required before this is complete.

Engine simply draws a world grid. World grid object needs to be split off
from the primitives_technique object into its own independent object that
can be created/destroyed through Lua API and reference the active scene,
etc.

Lots of API added to scene, draw code, etc. More abstraction is needed to
make it easier to change implementations or the API itself. Some objects
are not fully complete and still need some API, e.g. transform_buffer and
draw_buffer need safe API for appending draws without risk of overflow,
and support for resizing buffers appropriately (or alerting calling code
of insufficient space so draws can be logically split up so resizing isn't
necessary).

Also need to figure out how to combine various objects used for rendering
into one or two abstract objects, so that higher-level code doesn't need
to check for support for various features at the implementation level to
ensure it doesn't use an object that isn't supported
(draw_parameters_buffer, hint hint!)

Overall, needs a lot of refining and testing on different platforms.