Skip phis with one operand (issue #61)
Merge pull request #64 from rsas/issue61

Skip phis with one operand (issue #61)
bump Klee version

bump LLVM version

bump Hiredis version

install the Hiredis static library and include files by hand; do not build the
shared lib
Merge pull request #69 from regehr/bump-klee

bump Klee version, LLVM version, Hiredis version, build and install only the static hiredis lib
A fix to issue 26

The idea is that when we build an instruction, if the instruction is a
phi-node with multiple incoming edges, we do DFS from the basic block
containing the phi-node and check if we will revisit the basic block.
If yes, we know that this phi-node is the merge point of loop iterations.
all basic blocks along the path of the detected loop are cached for
speeding up future queries.
added a test related to issue 26

This test caused the infinite recursion behavior described in issue 26
Fixed a problem for sub-loops

When we do dfs from a phi, it's possible that we will encounter
other loops that not start from the phi we started with.
add some tests
Fixed a test
Looks work now

* Fixed a stupid DFS issue
* caching subloops, which may result in better performance
correct-ize the caching logic