Add `keyboard` option to carousel

Also adds unit tests for keyboard events.

Fixes #14468.
Merge pull request #14590 from twbs/carousel-keyboard-option

Add `keyboard` option to carousel