More testing

Quite a few changes this time, turns out strlen is not built in; neither
is sprintf. Had to do a bit of adjustment to compensate. Obviously you
should just use std::string objects if you have the option.