solutions to various code katas on codewars and elsewhere