Added a custom UserPrincipal object so that I can start getting
information that is not retrieved with the built in UserPrincipal
object. At the time of this commit, some of the basic data is being
retrieved but I'll have to look at why some of the data is not being
retrived or shown properly.