Merge pull request #18 from ualerts-org/createRosterAddedController_ACE-44

Create roster added controller ACE-44
Added matches method to UserName.
Added matches test to UserNameTest.
Refactored Conversation to use matches method in UserName and renamed
finalize methods per code review.
Checking for null participant prior to delivering message.
Refactored RosterAddedController to call new finalizeRegisterParticipant
method.
Refactored SockJsHandler to call new finalizeRemoveParticipant method.
Added DateTimeService autowire to ConcreteChatService.
Added setDateTimeService to constructor.
Added setDateTimeService to Conversation and ConcreteConversation.
Added status enum to Participant.
Modified UserName matches method to account for null arg
Modified ConcreteChatService to autowire DateTimeService
Modified ConcreteConversation to send messages when a user joins a chat
Modified ConcreteParticipant to use status enum
Added UserName.Null_USER check to UserName matches method
Refactored finalizeRegisterUser to deliver content message(s)
Refactored ConcreteChatServiceTest
Refactored ConcreteConversationTest
Formatting for ConcreteConversation
Removed testing code from ConcreteConversation
Refactored ConcreteConversation per Michael's suggestion to create a
deliverParticipantMessage method to take care of the null check logic
Merge branch 'notifyParticipantsOfAttendance_ACE-46' of github.com:ualerts-org/ualerts-chat into notifyParticipantsOfAttendance_ACE-46

Conflicts:
	org.ualerts.chat.service/src/main/java/org/ualerts/chat/service/api/concrete/ConcreteConversation.java
Fix to use UserName.matches method after merge conflict resolved
Refactored deliverMessage to not alter the to property of a message
Merge pull request #19 from ualerts-org/notifyParticipantsOfAttendance_ACE-46

Notify participants of attendance ace 46
Rebase from master