Add hidden default constructor to ConnectionConfiguration

aSmack subclasses ConnectionConfiguration and needs a constructor that
does no network I/O.
Implement support for roster versioning

Roster versioning is defined in RFC 6121, section 2.2.6; the protocol
was originally described in XEP-0237.

Fixes SMACK-399
Move 'new MXParser()' in try/catch block

aSmack replaces 'new MXParser()' with
'XmlPullParserFactory.newInstance().newPullParser()' which can throw a
XmlPullParserException. In order to build aSmack, we need to move the
'new MXParser()' within a try/catch block.