factored out solution 1 utilities
factored out solution 2 utilities
factored out solution 3 utilities
factored out solution 4 utilities
changed palindrome implementation name
isolated predicate in solution 4