Improve potential error cases in the process object.

Make sure that the active process object is not null when setting
progress onDelete.

Ensure that the active process is set to NULL if an exception occurs
during adding of commands. If the delete command is not registered,
then this ensures that the active process is set to NULL.

Change-Id: Ifd128bfd330009d8a31eaebc29b5424a1f97d01b
add check to ProcessObject::GetProgress after execution is 1.0

Change-Id: Ia2d6abee3f4d9be3795a99e43c684365b5ea13bf
Terminate program is deleting command during an active process

There is a corner case where a user could delete a Command in while a
process is active. This would have the ITK object holding a command
with an invalid sitk Command. There is not easy way to rectify this
situation with out extensive book keeping. So there program is
explicitly terminated.

Change-Id: I0891ca1d2d87f10c28bebc7333d755f67d44fccc
Adding death test for deleting and active command

Change-Id: I6fb94aa12f8341c3dc290b9b489b9f3396ad8a2e
Merge topic 'SIMPLEITK-454_AddEventCallbacks' into next

8b935b2c Adding death test for deleting and active command
7d52b81e Terminate program is deleting command during an active process
b3f2bd8c add check to ProcessObject::GetProgress after execution is 1.0
486581ab Improve potential error cases in the process object.