[SharpDX] Added DisposeEventArgs with Disposing flag

See issue #478 

When raising DisposeBase.Disposing and DisposeBase.Dispose, uses DisposeEventArgs as event args which contains flags 'Disposing'. This way it's possible to handle each case in different way (when disposing from finalizer or not).

Does not break any existing code.