refactor to common C language features

This refactors such that it is easier to create different C-like
languages
add convenience accessor

This adds a method to rcptr for fast checking (performance)