From my understamding, witnesses are members that run nodes. These nodes i think are responsible for the generation of the blocks that make up the block chain. Witnesses are also highly influencial in helping define the direction the platform goes through their inputs. They can also serve as a voice for the general population of steemit. Hope this helps :)