rearanged texture classes and added texture1d