polished the soft shadow routine and added new Texture static class