Geochemical and Biogeochemical Reaction Modeling: Kinetics of dissolution and precipitation