rubywarrior oop & linear solutions