Snapshot metadata

This isnt for merging yet, just WIP,

Bit of a slow start, but figured while I am still finding my way around the codebase i'll raise this so ppl can peek at the progress more conveniently and give me feedback as i go.
Don't need the outside set of parens on either of these expressions. (Note I will yell out some style things in cases where I think you may not of realised - don't take this as an edict - if you knew and want it to be like that, it is fine)