Added solution 18 (part 2)
Added solution 16 (part 1)
Added solution 15 (part 1)
Added solution 20 (part 1)