update the dictionary in dataset rather than building it - I know this breaks the tests but I'm off on holiday and want to push it before I do so I know where to pick up later and have a backup