Build custom data on Message object API.
Update APIChanges.md

Format with git markup.
Merge branch 'master' of https://github.com/skykelsey/apptentive-android into message_data
Update APIChanges.md

More formatting changes.
Bump to 1.2.2. Update CHANGELOG.
Merge branch 'v1.2.2'
[#SUPPORT-42] Fix NPE in survey code. Send event when this potentially happens, because it shouldn't.
Create a new internal error reporting system. Catch exceptions that would otherwise crash the host app, and log them to the error reporting system instead. Log a possible crash due to survey list returning null from parsing code. Remove unused placeholder methods from Apptentive. Remove some dead code in FileMessageView.
Return boolean from Apptentive.showRatingFlowIfConditionsAreMet(). Return true if rating flow was shown. Update docs.
Merge branch 'master' into message_data

Conflicts:
	CHANGELOG.md
	apptentive-android-sdk/src/com/apptentive/android/sdk/Apptentive.java
	docs/APIChanges.md
Update docs, bump to 1.2.3
Update README.md

Add custom message data to optional section.
Update README.md
[#ANDROID-201] Fix problem where surveys were being fetched before Device info was sent, which meant that if device infor was used for targeting surveys, the proper surveys would not be returned until after the intial survey cache expired from the client. Fix is to only fetch surveys after device info is sent.
Allow EnjoymentDialog to be canceled. Send enjoyment_dialog.cancel Vvent in this case, and set the rating flow State to POSTPONED, just as if the user had tapped "No".
Make RatingDialog also dismissible via back button. Fix problem where on KitKat, rating flow can show up twice.
[#ANDROID-223] Trim Survey text responses
Update README.
Bump to 1.2.4
Set version to 1.2.4 in changelog.