Added children and some convenience functions and types