Add pure ruby implementation and update README