Rework stacking to prepare for immutability
Make BCValue immutable
If it doesn't break tests, it's not a useful feature
More relaxed line width
Never want extra args
Remove unreproducible catch test case
Only destack when necessary
Correctly do type checks on BCValue creation