Message class
Base class for objects which represents output messages.
Represents a message to output to the user with potential visible effects.
Constructors, destructors, conversion operators
Public functions
- auto what() const -> const char* noexcept
 - Gets the description (or reason) for the alert.
 - 
              template<class T>auto operator<<(const T& v) -> std::enable_if_t<Internal::
CanBeOutput<T>::Value, Message&> noexcept  - Operator overload to aid in the construction of Alert messages.
 - auto operator<<(const RaiseT&) -> void
 - Operator overload to raise the Alert from a stream.
 - auto raise() const -> void virtual
 - Raises the Alert to the user.