Modify bubble positioning code to be aware of being off the left side of...

... the screen.

This will help with small screen widths (eg: mobile) when the avatar is in near
the center of the screen. Normally this causes the bubble to shift to the left
side of the cursor, but if the width is too small, this may cause it to fall off
the screen on the left side.

To keep the code DRY, move the positioning code to a new, common function
defined in cd-bp-avatar-bubble.min.js.