Solutions to the project euler Programming Challenges