Added abstract vector superclass