Cleanup

@localshred bit of cleanup in preparation for more "real" fixes. In particular, this makes sure the spec protos are always compiled, which is kinda important.
Same, revert back to class_eval.