Principles of Discontinuous Dynamical Systems