autogen: fixed several minor issues in the script

This cleans up and fixes several issues within the autogen.sh script.

This addresses the following issues:
  - Breakage with pathnames containing spaces
  - Exit codes not being propagated outside the script
  - Poor readability with shorthand options
  - The `srcdir` variable being forcibly set
steam: merge "Last Online" field into "Status" field in info display

This merges the "Last Online" field into the "Status" field of the info
display. This is done by showing the last online time where there would
otherwise be status flags. This has been done to further simplify the
output of the info command.
Migrate from the Steam Web API to the Steam protocol

When the plugin was first developed, it was not possible to have more
than one Steam client open. However, that has since changed, and rather
than deal with the joys HTTP, this plugin should move to the real Steam
protocol. This will also make way for new features down the road, such
as group chats and nickname setting.

This relies heavily on SteamKit, which provides a reverse engineered
Steam client as well as the Protobuf files for the Steam protocol. In
addition, the protobuf-c library has been introduced to make use of the
protobuf files provided by SteamKit.

This patch will only migrate the plugin the Steam protocol. Once the new
protocol implementation is working correctly, new features will be added
to the plugin.