Get additional link flags from llvm-config.

This fixes link issues with curses-enabled LLVM builds.
Update Makefiles in app directory

Use llvm LDFLAGS and allow compilation with clang++
Merge remote-tracking branch 'origin/master' into llvm-ldflags
Keep explicit -lpthread -ldl

Don't assume that these are included in $(llvm-config --ldflags)
Update README
Merge pull request #234 from halide/llvm-ldflags

Fixes for compiling with recent LLVM/clang versions
No longer skip stages when condition is a vector.

Otherwises it just scalarizes. Also fix a bug where scalarizing a vector if
wasn't expanding loads and stores to internal allocations.

Either of these fixes bug #236
Added multi-way variants of select to make small select trees.
Check for out of memory in buffer constructor

Fixes bug #235
Ensure all bound ImageParams have non-NULL host/dev pointers

This adds a layer of paranoia to catch failed allocations of Buffers.