Add convert, except, optional and stream.h

These are based on existing classes, but are re-written for C++11.
Add option

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.

This includes show_message, hostname, filename, system, execute, reboot,
as well as global variables.
Merge branch 'master' of github-dimitry-ishenko:dimitry-ishenko/app