Move version assignment to Memory where it is used
Remove leftover assignment to collection.total
Allow Memory subclasses to provide initial data at runtime
Add test for synchronous totalLength from Memory