Moved assign_expression from vex::vector to operations.hpp

This allows to assign expressions to terminals other than vex::vector;
e.g. vector slices or permutations.
Making vector_view writable