Allow SSecurity to specify AccessRights for SConnection.

SConnection has AccessRights property that specifies what connected client can
do. Set this property to value given by SSecurity after successful
authentication. This way individual SSecurity subclasses can accept clients but
restrict their access.
vncpasswd: Ask for read only password.

Ask for optional second password that is used for read only access. Save it
after the main password. This is same format as tightvnc uses.
VncAuth: Read and use readonly password.

Try to read second password (for read only access) from rfbauth file. If client
sent second password instead of first one, allow him read only access.
Add AccessSetDesktopSize right.

So clients with limited access rights can not affect it.
Update comment of VncAuthPasswdGetter::getVncAuthPasswd.
Merge branch 'readonlypassword' of https://github.com/michalsrb/tigervnc into viewonly
Use new API for getVncAuthPasswd()
Limit access to non-shared mode

A read-only client should not be allowed to kick out other clients.
It will be forced into shared mode, or refused the connection, depending
on the neverShared parameter.
Make sure attributes propagate through security wrappers

Both SSecurityVeNCrypt and SSecurityStack are wrappers around other
security objects, so they need to delegate the properties of those
sub-objects properly.
Merge branch 'readonlypassword' of https://github.com/CendioOssman/tigervnc