change the way that canonicalise plugins are called, to be consistent with type detection
add canonicalise for dois and associated tests
add canonicalise for pmid and associated tests
add cache check and invalidation and associated tests
add stale check for bibjson licence records, and associated tests