CMake: Fix installing shared plugins

Do not use absolute path in install command, but relative from new variable
CMAKE_INSTALL_PLUGIN_DIR. Absolute paths in cmake can break packaging.

REVIEW: 112831
Support multiple sessions with separate configuration and cache

Thanks to the work Pali did within the GSoC, Trojita no longer constructs a
QSettings instance from multiple places. It is therefore pretty easy to enforce
a separation of some kind between the concurrent sessions. One use case of this
patch is for situations where it's necessary to access multiple IMAP accounts at
once. It's a pretty sucky hack, but it could serve as a stopgap measure until
proper multiaccounts support is written and integrated.

You can test this now via executing trojita with the --profile option like this:

    $ ./trojita --profile work

Of course this patch will cause havoc when support for IPC via DBus is merged
(think mailto: URL handling); that will have to be disabled when a "special
profile" is called. Let's see how well this works for now. Oh, and *please*,
keep the profile name in ASCII; things will break if you don't do so.

For users who do not set a the --profile option, nothing changes and everything
shall work well. It is also safe to run one Trojita instance without any fancy
options and a second one with a custom profile (as long as your profile name
does not match a base64-encoding of some mailbox; please do not do this,
either).

The patch abuses environment variables behind the scenes. I'm not going to put
any more work into this -- the patch is ugly as usual, but this is officially
supposed to be a time-limited hack anyway.

REVIEW: 113150