Currently the gamestate serialisation methods are [very coupled](https://github.com/ChristopherDocherty/BridgePlayingProgram/blob/24f633566a669f323ffded883c5ee663d3924a9b/src/models/bridge/bridgeGamestate.cpp#L30) to the serialisation format. This should be much more generic, ideally exposing to methods: `serialise` and `deserialise` which take the serialisation format as a template parameter