Reland: Show message center on lock screen

The original CL (crrev.com/396402) was comitted but reverted (crrev.com/396495) due to MSAN failure (forgetting free the instance). This patch relands it with changing it with unique_ptr.

BUG=615443
TEST=MSAN bot passes
TBR=dewittj@chromium.org, skuhne@chromium.org

This patch does:
- Show the message center button on tray on the lock screen
- Show the message to encourage user to log in when user opens message center on lock screen
- Add SetLockedState(bool) and IsLockedState() method into MessageCenter class.
- Don't make notifications read when opening the message center on lock screen
- Add tests

And this patch also fixes the bug that this makes blocked notifications read wrongly.

BUG=599891
TEST=manually tested

Committed: https://crrev.com/48c4b94a9d9eb0ae3a20ed9c05d9e77ff1a98b50
Cr-Commit-Position: refs/heads/master@{#396402}

Review-Url: https://codereview.chromium.org/2025613002
Cr-Commit-Position: refs/heads/master@{#396785}
14 files changed