[log] IDEA-107117 Fix disappearing filter components

Per nature of CustomComponentAction, don't store the state in the
components itself.
Instead store current filter state in the main ClassicFilterUi class,
providing FilterModel classes to let components get and set
filters' values.

(cherry picked from commit 5b90c388fffdf03d33f7c28d6a00b81cbd9babf3)
[log] IDEA-107117 Fix NPE in date filter: both before&after can be null

(cherry picked from commit b7545f79ac2e31d8d4bc33e988072d32a2b76196)
[log] IDEA-133475 Remember text filter in the model on-the-fly

(cherry picked from commit 80a929ef9b85a40bba5d7c72b00c84303644ed93)
[vcs] style: delegate to fuller constructor

(cherry picked from commit 7864776cdf730b60ecec61b11743de94a0fa4dd1)
[vcs] Inline unregistered roots: use wrapper class for table & model

IDEA-111168, IDEA-84497

(cherry picked from commit 7c5859deb8d0819548f0f5578e50f8b3a4faf7b6)
[vcs] Inline unregistered roots: show them inlined

IDEA-111168, IDEA-84497

(cherry picked from commit cdaf75574795d5487ee545327e14373cc58917dc)
[vcs] Inline unregistered roots: handle add/remove/edit buttons

* Disable remove/edit for unregistered roots.
* Let add several unregistered roots: don't show a dialog, just add
  these roots.
* Make sure unregistered roots are always beyond registered ones.

IDEA-111168, IDEA-84497

(cherry picked from commit 2b7cad0f4ff61c1d512b0033fe41512551108727)
[vcs] Inline unreg-roots: if valid root is removed add it to unregs

+ fix the comparator to make sure the separator is above unregistered
  roots

IDEA-111168, IDEA-84497

(cherry picked from commit f4e8dc7c457224a08e80db8dd7ac12f681710f3e)
[vcs] Don't treat a root as unregistered if its VCS doesn't support root checking.

In particular, removing <Project>-<none> mapping shouldn't place it
to "unregistered" section.

(cherry picked from commit d38fbb57c99f469d355cc6e080466ef8eb6fdd41)
[vcs] unreg-roots: ignore specified roots from notification

* Deprecate "Ignore All VCS roots warnings".
* Instead let Ignore given roots from the notification.

(cherry picked from commit 9af58db7247168e147ad6d0a3bcfcb3731aa6780)
[vcs] Extract addMapping functionality to a utility method, DRY

(cherry picked from commit 8c189909827b4051b6893b32eeb9b4a7afa48cff)
[vcs] IDEA-112436 Add unregistered root directly from notification

(cherry picked from commit 03c91b38041aa15dcf8030ced8680274ad2892ce)
[vcs] IDEA-133320 Fix html tag in notification text

(cherry picked from commit 17c1e4254ad3e83ce23df681d84eea6939e566f4)
[git] IDEA-133309 Fix possible NPE

Although the setter is @NotNull and default value is not null,
myUpdateMethod can still receive a null due to our serialization
engine problems => protect against this by reusing default value.

(cherry picked from commit 770e56a58a043513de3837c7bb88c43441ee0f1f)
[git] IDEA-133368 Enable git add on new files

Until we know about the index (and therefore know if the file is
added+unstaged-modified) it's better to allow the action than to
disable it.

(cherry picked from commit dc79484f123b7df49e3b34d4efebee7f6dd48559)
yellow color synced with the corresponding terminal one (WEB-14309 unreadable warning color in grunt console)
(cherry picked from commit 4c544cf)