Add option classes

Used for option parsing.
stream: rename buffer to get and set
convert: bool is included in is_integral
option: add to and as template functions
except: simplify exception
option: update

Rename as into to. Make as and to const.
Replace found with find.
Replace get_if_found with to and get template functions.
application: update

Replace functors with virtual functions.
Save exception in notify and rethrow it inside run.
Add common functions

This includes show_message, hostname, filename, system, execute, reboot,
as well as global variables.
Add copyright/license headers
except: use descriptive variable argument

Allow message in system_except (through use of gcc extension ##args,
which works on clang aswell).
common: show_message: fix output for exceptions without message
application: message takes one param
Add slap classes

Initial version, probably lacking some features, which will be added as
it starts getting used.
optional: add typedef value_type

Fix typo.
option: formatting

Remove template default parameter.
slap: update

attribute: add to and get template functions

entry: add value convenience function
entry: add to and get template functions with specialization for
optional<>

NOTE: since partial function specialization is not allowed, we create
_M_to struct and call its func from to. (Don't need tod do this for get,
as it is done through overloading.)
convert: add specialization for QString
slap: entry must be const
convert: use _M_convert helper struct

Since C++11 (still) does not allow partial specialization for functions
and SFINAE get uglier in direct ratio to the number of special cases, we
employ helper structure _M_convert and specialize that for numbers,
bool, std::string and QString.
optional: make is_none const