PTX doesn't like kernel names with non alpha-numeric characters

Triggered now because names include '[' and ']' for arrays of Funcs.
Change static tests to generate .o and .h files into a per test
directory to avoid issues with one test linking in a different test's
.o files. This eliminates an error doing "make static_test" on a
non-clean directory.
Merge pull request #279 from halide/typed_handles

Change static tests to generate .o and .h files into a per test
Attempt to fix msvc warnings.
Represent OpenGL texture loads using intrinsics
Represent OpenGL texture stores using intrinsics
Move OpenGL-specific lowering code to separate file
Merge branch 'master' into opengl
Merge with master and opengl
Sanitize C names to avoid reserved words in C-like languages