restructure summary attribute, memoize get_summary, introduce get_siteurl