Vertical, horizontal, and grapevine communications

What are the differences between vertical, horizontal, and grapevine communications?