Add compact revision representation to try to reduce memory bloat
potential optimizations