Exec2 refcnt refactor and bug fixes.

Stronger refcnt assertions are added to enhance integrity validation.

Refcnt calculation is refined as follows:
- Duplicate vecs in a frame count as multiples.
- All vecs that share one master vec constribute 1 to the master's
refcnt.

We are going to use new pop and push coding style to reduce refcnt
mismatches. Essentially, we should maintain that env's refcnt table
should be valid anytime during normal computation. refcnt update
should be carried out mainly in two API's, pop and
pushpop. Recommended coding style is

ary = env.peekAry()
... // use ary
newary = new Frame()
env.poppush(nargs, newaray, key)
Merge branch 'master' of github.com:0xdata/h2o