Soliton Dynamics