Add python solution to challenge 29

Signed-off-by: James Durand