added a require function, with caching :D
More progress on keygen