Telling stories: enumerating maximal directed acyclic graphs with a constrained set of sources and targets