Make presence parsing more robust

by allowing 'show' to be an empty element: '<show />'
Don't repeat documentation, link to it instead

also fix some typos and improve some markdown formatting.
Add ChatState.getChatState()