Add missing license headers
Add an example class to test sandboxing on it
Fix rewrite of constructor calls

The previous assumption that super initializer is always the first call
in an initializer turned out to be wrong. It also turned out that after
'new' there's usually 'dup'.

- make SandboxAdapter count removed 'new' instructions, and use that to 
  determine if we're calling a super initializer or not
- make SandboxAdapter remove 'dup' instructions directly following 
  a 'new' instruction
- add SequenceMethodVisitor as a convenienve for whenever we need to 
  detect if we saw an instruction that is different than the expected 
  one

This should work for javac and hopefully for ECJ. Bytecode generated by
other compilers may get its stack corrupted by the transformation, which
will result in a crash at verification time.

To fully support arbitrary stack operations on the uninitialized
references between 'new' and initializer call, we'll have to track the
stack with something like AnalyzerAdapter.

For now though, this should suffice.

Ummm... wait, we still gotta fix the dont-intercept case.
Let RewritePolicy know what class is being transformed

Make SandboxAdapter remember the name of the class being visited, wrap
it with ASMs type object, and pass it as an argument to the policy's
shouldIntercept method every time we call it.