Make Tooltip component based on Dropdown
Description
Now Tooltip and Dropdown components works very similar, but has each own implementation and codebase. Also some functions only exist in Dropdown component, but missing in Tooltip, for example 'boundary' close mode.
Describe the solution you'd like
It will be good if we try to make Tooltip component base on Dropdown, so Tooltip will extend all Dropdown logic and only provide own render implementation and default props.
Additionally I'd like to ask pass arrowProps in Dropdown's renderDropdownBody method, as it is implemented in Tooltip, to have possibility manage arrow placement.
Because we have need to create Dropdown with arrow, and sometimes it is not working properly, when not enough space to drop bottom:

Released in 4.10.0. Minor issues reported here.