Sample SAMPLED_GUARDS from GUARDS per new guard plan

New guard plan summarized at https://lists.torproject.org/pipermail/tor-dev/2016-July/011234.html

  1. Sample SAMPLED_GUARDS from GUARDS
  • Fill in state for each sampled guard (added_on_date, etc.)
  • Save/load SAMPLED_GUARDS to/from state
  • Unittests for sampling/saving/loading
  • Thoughtworks function: fill_sampled_guards_from_entrynodes()
  • Thoughtworks unittest: test_fill_in_sampled_set()