Trivial style fixes
Make TimedItem.reparent() 'package private'
Fix reparenting when setting TimedItem.parentGroup

Makes sure that we update both the previous and new parents when assigning to
TimedItem.parentGroup. Also adds a number of tests concerned with reparenting.