component/tooltip: add tooltip component