CodeMesh 2014 - Edwin Brady - Verifying Stateful and Side-effecting Programs using Dependent Types