added linear transformation class