OverviewMap control

This replaces #822. It cherry-picks all of @adube's commits, and makes necessary updates due to library changes since the original pull request was created. No other changes were made so far.  
Button structure doesn’t follow the one introduced in #1725 (accessibility)