Implement Deref for Value and use it in lots of places instead of manually accessing its `ptr` field