Added pseudo state kinds

Added Choice, EntryPoint, ExitPoint, Junction & ShallowHistory pseudo
state kinds.
Added randomOrDefault array method in support of Choice pseudo state
kind (yup, UML spec specifies random).