Add README.md and a recursive version