Git object classes refactored