Fixing compile errors (Issue #28)

Sadly, I'm getting an error about not being able to find the OpenCL crate anymore...
Added more documentation.
Added mutex around clGetPlatformIds
Updating to latest Rust.

Sadly, the context creation utility function now allocates. Hopefully LLVM can optimize this away.
Move RUST_THREADS=4 to .travis.yml, since this restriciton only applies on Travis build servers.
Version bump.