Script: fix typo
Script: OP_ROLL, OP_PICK: fix boundary check
Script: check ifStack after execution
Script tests: cleanup, fix error handling

use evalScript to check result and execScript to display error
Script tests: test parse errors correctly
Script: better handling of disabled ops

Test op against list of disabled opcodes, throw error even in unexecuted branch

current test stats:

         Test Cases    Total
 Passed  270           270
 Failed  22            22
 Total   292           292
Merge remote-tracking branch 'upstream/master' into script-tests
Script: add OP_VERIF, OP_VERNOTIF to disabled ops

not explicitly tested together with the other disabled opcodes in bitcoind for
some reason
Script: pull checkEmptyIfStack into evalAll
Script: altStack is not shared between executions
Script: handle OP_VER correctly, add checkPushOps

checkPushOps currently disabled, the conditions under which it is executed are a
a little tricky
Script: support for PayToScriptHash

Fixes #5
Script: check size of OP_PUSHDATA payloads
Script: honor opcode and stack item size limits

only one test failing now
Merge remote-tracking branch 'upstream/master' into script-tests
Script: use popBool, popStack instead of tStackN

datatype-specific push and pop functions read better than tStackN functions and
allow checking for error conditions properly.

Fixes last failing test from `script_invalid.json`

Fixes #6, #4
Merge pull request #65 from OttoAllmendinger/script-tests

Script: Honor size limits, handle reserved words correctly, support PayToScriptHash