Solutions to the projecteuler.net problems