Lists get first() and last() member functions
- this builds on Mattijs' commit 968f0bbd but with a first() as well. - Added both to FixedList, IndirectList, UIndirectList and *PtrList and since they can certainly be useful there. Did not add to BiIndirectList, since I'm not sure what it should mean there. Did not add to PackedList, since it's not clear how useful they'd be yet in these contexts (and I'm not sure how it would interact with the iterator proxy implementation). - Note: STL defines front() and back() for these methods.