Delete drivative order from AO::Gaussian::Primitive
Define class AO::Gaussian::Primitive::Product
Reimplement Primitive#overlap using PrimitiveProduct

[ci skip]
Fix argument order

[ci skip]
PrimitiveProduct#hermitian_coeffs should return a Float

[ci skip]
Spec helper method E(t,i,j)

[ci skip]
Refactor specs for PrimitiveProduct#hermitian_coeffs

[ci skip]
Spec for PrimitiveProduct#center
Add Vector#r2 method

[ci skip]
Fix PrimitiveProduct#overlap_integral
Decompose PrimitiveProduct#overlap_integral
Reimplement Primitive#kinetic using PrimitiveProduct

[ci skip]
Delete wrong spec
Add specs about two primitieves on different centers

[ci skip]
Fix kinetic integral
Merge branch 'feature/primitive_product' into develop