DOC: Improved Image Representation

The description of an image representation was missing the
direction cosines all together.  Understanding the physical
representation of an image, and it's relationship with
the index representation is a crucial element that must
be documented.

Change-Id: I5a103f878f84b4385cdccc7f7d0cb32dc803ffb7
ENH: Explicitly specify internal linkage for internal observer objects

The Observer and SubjectImplementation are internal to the
itkObject.cxx file. Explicitly specify linkage.
ENH: Enable observed events to modify observers

There is no way to know if an object is executing an event, and it
wasn't safe to modify the observers when an event was being executed.

This patch is inspired by the ModifiedList implementation in the VTK
SubjectHelper class. It allows for recursive execution of events
and modification of the observers during execution.

The Command list items are saved on the stack recursively. Given that
it's not expected to utilize a large number of Observers with ITK, nor
is it expected to be common practice to delete Observers during event
execution, this method was chosen because it does not utilize any
dynamic memory allocation which causes reduce performance. This was
done at the expense of stack space. Additionally, when an observer is
deleted the search time is O(n^2), but it's safe.

Change-Id: Ia2068044454806b2cf018ba881126b65b152ac3c
Merge topic 'EnhanceDirectionCosDocumentation'

e4c851f3 DOC: Improved Image Representation
Merge topic 'EnableObserverModifyObservers'

f7307e26 ENH: Enable observed events to modify observers
4c4e6266 ENH: Explicitly specify internal linkage for internal observer objects