start of a minimal document for #54
Make symbolic if-then-else operator lazier on infinite stream values

This addresses issue #128.
Add regression test for issue #128.
wrt #132 update the expected output for the tests.
Add regression test for issue #130.
fix expected test output for issue #128.
add wip branch info to HACKING.md
Working draft of "hacking" document

Merge branch 'feature/issue054'

Closes #54
Merge changes from latest version of SBV

Includes changes after LeventErkok/sbv@55a9405954b02c30bfa0f0f237b157a42a1af63b (Aug 28)
and up to LeventErkok/sbv@67656c6abad7a25b2626fa52d1a16003dff5294d (Nov 3)

Fixes #135.
Add regression tests for issue #135.
add guards for bit vector widths during concrete evaluation

Tested on my 64-bit machine; will run tests on Jenkins slaves
add tests for #73
Partially fixes #73

Due to the limitations of the GHC runtime, we can't get around the
possibility of out-of-memory errors, but we can prevent individual
bitvectors from being too large for the libgmp-backed bignums.

There is now an architecture-dependent check whenever creating a new
`BV` value in the concrete evaluator to ensure the width does not
exceed the GMP limits. If a width is too large, the evaluation returns
to the REPL much like diving by zero.
Add regression test for github issue #133.

Renamed old "issue133" to "trac133", indicating that it uses a different
numbering system.
Speed up lexing of large integer literals

This partially addresses issue #139.
Speed up implementation of 'width' function

Fixes #139.
Make evaluation of lists of bits non-strict in the elements.

This means that e.g. [True, error "foo"]@0 evaluates to True,
similar to how [0x1, error "foo"]@0 evaluates to 0x1.
Share more code between interpreter and symbolic simulator

Some interpreter/simulator operations are now overloaded using
a newly introduced 'BitWord' type class.
Fix symbolic simulator implementations of (!!) and (@@)

Now these operations correctly set the is-bit flag on
the VSeq constructor when the result type is a list of bits.

Fixes #148.
Add Parser AST constructor EInfFrom to represent [x...] and [x,y...]

As a result, parsed terms including [x...] or [x,y...] now pretty-print
back out using the same syntax.