initial port of https://developers.exosite.com/display/DEV/Custom+Widgets?src=search