Move a lot of posix_math.cpp into posix_math.ll

This lets us annotate the calls as side-effect-free.
Improved pnacl build instructions

Pnacl llvm doesn't seem to build using ./configure && make anymore.
Changes to satisfy -pedantic
Bug in generating var names for an implicit base case reduction definition

Repeated var names were getting created, and that error wasn't being
caught as early as it should have been. We now check for name reuse
when defining a Func.

- Andrew
Add header required for memcpy.
posix_clock.cpp should use sys/time.h (or time.h on Windows) rather than trying to define timeval itself; the existing definition was wrong for OSX (Issue #107)
-pedantic fixes
llvm 3.2 is missing some intrinsics
llvm trunk removed SSPBufferSize
Added better error messages for bad vectorization widths
Build now fails if initmod doesn't compile
Merge pull request #108 from steven-johnson/master

posix_clock.cpp should use sys/time.h
Embed OpenCL headers for simpler runtime build
Attempt to fix CL include build on Linux
Merge branch master of halide/Halide