Fix random_element spec helper method
Delete drivative order from AO::Gaussian::Primitive
Define class AO::Gaussian::Primitive::Product
Reimplement Primitive#overlap using PrimitiveProduct

[ci skip]