Remove warning on an unused variable in CodeGen_PNaCl.h
Use the given value in Target::set_features
Merge pull request #492 from jaakkotuosa/fix_target_set_features

Use the given value in Target::set_features
Merge pull request #491 from jaakkotuosa/unused_variable_warning

Remove warning on an unused variable in CodeGen_PNaCl.h
Changes to comments in tutorials which explain how to build the
lessons. (Added libpng dependency to lesson 12 and added an explanation
of how to use the toplevel Makefile to build each lesson in a comment
in the file for that lesson.)
Allow shufps or pshufd when checking for reversed loads
typo fix
Stop testing for reversed loads.

Different llvms do them in different ways.
Fix if-then-else simplifier bug.
Fix bug in CSE: Was mistakenly returning early on some large exprs

e.g. (nasty_expr + 1)
The output of halide_log, exp, erf, etc needs CSE applied.

This used to happen at func definition time, but then these
intrinsics were deferred until codegen. This caused very
slow codegen for anything taking exp(nasty_expression)
On linux, link libstdc++/libgcc into libHalide.so statically

Should avoid version conflicts in the binary distributions for people
on different systems to mine.
Rework and add new rules for simplifying ramp/x and ramp%x

Fixes issue #458
Fix infinite loop found with fuzz_simplify

ramp(cast(intimm), ...) was treated as a simple_const
Fix memory leak in OpenGL runtime
Perform simplification for floor/ceil/round/trunc

- constant folding
- simplify repeated application of integer-valued functions
Correctly handle vector types for builtins and div
Explicitly truncate when doing float->int casts in GLSL

This is for cases where both values are represented using "float"
variables. For example, for uint8->float casts, we can optimize away the cast,
but for float->uint8 casts, we have to perform an explicit truncation because
both types are mapped to "float" in GLSL.
Make GLSL version of lerp (more) compatible with CPU implementation
Fix unit test