* wrapped table in a container to mitigate polluting the dom
* moved utility functions outside of the plugin