Charon: Re-implementation

Split out string handling from type handling
Charon: Reclaim memory for variable length strings

Also provide proper header guards
Charon: remove debug spew
TestCharon: add some more tests
Merge branch 'charon_ng'