Updated protobufs for new authentication modules in client

Changed Authentication to contain a required string username and a list of AuthenticationEntry protobufs
Added AuthenticationEntry, contains a required string key and a required byte[] value
Also updated .gitignore to ignore IDEA project files

Change-Id: I9cb4a272c9e29f6fd156c0be8744df6770381d34
Session handling update

Added "sessionToken" field to the Protobuf to support session handling

Change-Id: I79929370e209f9e8117d8a154595ef55ed32b2e9
Session handling update 3

Removed AuthenticationEntry and Authentication protobufs, added
AuthRequest and AuthResponse protobufs with optional fields for
sending and receiving auth data. JSON is no longer used in the
Response "message" field for sending auth response data.

Change-Id: If92237592fd968539fe041cc2c7c4eae866f1826
Performance instrumentation update 1

Added Ping message to protocol.
Co-commits: svmp-android-client, android_external_svmp_eventserver

Change-Id: I0263af98bebbd077c759d6b9193e0e17bfdf6c5a
Auth module update 1

Separated Auth Types from Auth Modules; now supports any
combination of Auth Modules.

Change-Id: I97b5700fab61db17762c694ba367b687a814e3dd
Add VideoStreamInfo to Request for Proxy->VM

Added 'videoInfo' optional field of type VideoStreamInfo to Request.
The proxy shall send a message with this field set to the VM's input
server immediately upon connecting so as to provide the input server
the necessary WebRTC setup information prior to the client sending its
'offer'.

Change-Id: Ic7ce56b0a20106ef80a5d5c1122c1a669277fa4a
Updated client awareness of session expiration

Changed Protobuf AuthResponse to use an optional SessionInfo
message. That includes the session token, as well as new fields for
max length and for the grace period.
Co-commits:
svmp-android-client
svmp-server
Add optional C->S message for client's timezone ID

Change-Id: I745246b23e25a82d523f7ac5b126499ae2b2cafa
Added support for single app mode

Added Request and Response to support single app mode functions.
Request sends current list of apps, or an app to launch.
Response sends list of new apps, updated apps, and removed apps.

Co-commits:
android_external_svmp_eventserver
svmp-android-client
svmp-server
Added support for changing passwords

Revamped authentication to allow for a PASSWORD_CHANGE request,
along with NEED_PASSWORD_CHANGE and PASSWORD_CHANGE_FAIL
responses.

Co-commits:
svmp-android-client
svmp-server