Refactor to optimized data transfer

Listen only for child_added. Only consume new data rather than fetching
the entire array on each update.