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.
I rewrote it as a lazy method - so there's no need to imperatively call it any more