added benchmark framework
pass implementation names by value instead
rename implementations to names
corrected file locations and package names
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