Pulled out problem solution trait into it's own file for reuse in
all Project Euler solution code.
Created a trait which knows how to run (Project Euler) problem solutions and print the result
and time elapsed to standard out. Removes duplication in the various
problem solutions.
Renamed the object which provides problem 1 solutions to more clearly
indicate that this is what it does.
Added generic typing to problem solution objects and traits.
Moved Project Euler problem solutions objects into their own
(sub)package.
Fixed log message of result and time elapsed to handle non-number answer
types and removed formatting variable markup for a removed variable.
Added solution for Project Euler problem 2.