fork gem, refactor, add delay, fix specs