This is where I'm going to keep my algorithm studies in ruby