Refactored vispy.util.testing

Basically, the testing module is not imported by default. Stuff that
we need is moved out of it. Much test-related stuff is moved into it.

* app_opengl_context -> moved to vispy.app._util
* _TempDir -> moved to util._config
* requires_* -> moved into util.testing
* Fixed sys_info() function (we had two versions omg)
Merge pull request #207 from almarklein/refactor-testing-module

Refactored vispy.util.testing
Gloo: Put back fix for ATI driver bug for glBufferSubData

Was removed in new version of gloo.
Gloo: add __del__ method, which does nothing

But adds some comments on what we *could* do.
Gloo: Fix docstrings

Class docstrings get parameters. Formar of parameters more
like numpy standard. etc.
Gloo: Prevent too much data copy

gloo.gl takes care of copying when data is not contiguous. If we
would do it gloo, the copy is left in memory for much longer.

Also Buffer.__init__ never copies data. BTW: Buffer is a base class
and internally we never pass data to Buffer.__init__.
Gloo: re-applied improvements to shader error handling

Also use program validation
Fix bug in texture parametrixation

The need_parameterization flag was never set to False.
I am sure that I mentioned this bug earlier, but apparently it
was never fixed.
Gloo: fixes to variable.py

Some backported from Luke's scenegraph branch. Also fixes one
or two additional bugs.
Gloo: try handling ATI-bug only when strictly necessary
Gloo: remove public update method on GLObject
Gloo: improvements to Texture init.
Gloo: in Texture and Buffer: copy+store params -> store

store=False - do not store data on the CPU
store=True - store a ref to data
store='copy' - store a copy to data on ref
add todo for upcoming fixes (mostly to trigger Travis again)
Gloo: several fixes

Program init is aimed more at singleton shaders rather than a list.
Also more checking of the shaders.

Replaced "type(x) is SomeClass" with isinstance calls.

Doc for Texture format.
make flake message py2k compat
Gloo: Shader and Program do compiling/linking in _update

instead of in _create.
Gloo: dummy gl methods raise NotImplementedError

e.g. _create, _update. This ensures they are not forgotton.
And indeed they were forgotten for the variable classes.
Gloo: fixed bug that Program and Shadre could not be "re-created"

Also fix a test
Fix to last commit