move accepting_source to a public header
try out pipe syntax for composition of sources
make the shared build start ptime const