Containers: removed explicit element access from Array.

Element access can be done via operator T* (the test verifies that),
moreover this feature might not be always what is desired. Updated the
documentation to mention main use case.
Containers: added ArrayReference wrapper.

Unlike Array this class doesn't do any memory management.
Utility: added forgotten forward declarations.
Containers: allow to create Array from nullptr, updated tests.

Added check that Array is not implicitly convertible from std::size_t,
documented Array(0) ambiguity.
Utility: don't allow non-unique Resource groups.

Each group should fully register and unregister itself, no partial
(un)registration is allowed. If the group is already present on
registration, nothing is done, if the group is not present on
unregistration, assertion is fired. The assertion should be fired also
in the first case, but my poor understanding of C++'s static
initializers leads to weird behavior -- the initializer is either not
run at all (it gets scrapped at link-time) or it is run twice (it is
referenced, thus it is run and then run again from the place where it
was referenced.
Utility: using more of Containers::Array in Utility::Resource.
PluginManager: fixed typo in docs (beggining).
Containers: ability to create zero-initialized Array.
PluginManager: fix and test wrong plugin version and interface errors.
PluginManager: minor filename/variable refactoring.
Fixed compilation.

Broken in b6d87291ed899b8530e4cbd036705a1339505fa6 where Utility/Debug.h
include was removed, but never tested. Added forward declarations for
Debug, Warning and Error classes (they are used in e.g. operator<<
declarations), added missing include on places which needed that.
Utility: added support for multi-line values in Configuration.

Inspired by Python, multi-line values start and end with """ alone on
the line (first and last line break is ignored).
Utility: return UTF-32 as char32_t.
Utility: added Unicode::utf32().
Utility: ability to save Configuration to specific file or stream.
Utility: reworked Configuration.

Axed many unused or unmaintainable features (unique names, auto name
creation, getting values via pointer...). Simplified and refactored the
code and API, updated unit tests.
Utility: fixed crash when compiling *no* resource files.
Utility: minor cleanup and documentation improvement.
Utility: minor test cleanup.

Leftovers from Kompas (yay!).
Utility: print iterables to Debug surrounded with {}, not [].

Visual compatibility with C++11's initializer lists.