I guess I could contribute to a spec and of course coding but off the top of my head:
Base Classes/Interfaces: Salt, Acid, Grain, Water, Mash
Salt:
Properties: Molecular weight, Salt Name, Proton Contribution
Functions:
Operators:
Acid:
Properties: pH, pK1, pK2, pK3, pK4, Acid Name...