added base testing and hinting framework