vincent popups take padding into account

Currently, using vincent visualizations in data popups assumes a hardcoded total margin size (50px vertically and 75px horizontally). If a user has added custom padding, it isn't taken into account and the visualization doesn't fit in the provided space.

This pull request checks to see whether the user has set custom padding with a dict, and sets the size of the popup accordingly.