Text this: Formalising the Double-Pushout Approach to Graph Transformation