messed with vector maths traits/impls
module adjustment