Added MapList (not in use yet)

@nealstewart 

Promise to test the MapList once it gets used.
Because now we have tests, or at least we'll have that soon, so old copy-pasted code can finally be refactored without breaking functionality :+1: