add abstract value() method for ASingleElementVector
add index() method
refactor AxisVector getAxis() to axis()