Incremental definition of concat
Finish abstracting out pieces of concat definition