refactored: move value extractors to their own file
extract more gc information
refactor: extract classes