DataFactory

typealias DataFactory<DataT> = (initialData: DataT?) -> DataT

Creates new data using possibly existing initial data