Implemented 1, 4, 5, 9
 Added a map* function for mapping onto complex lists.