more specs, some changes to how Java types are handled