Add NewCaster() for initializing caster.
Make structs and members private.