Unit tests - Fix test data

Start and end dates were swapped.
Add asserts to make sure this can't happen.
Unit tests - Add test setup function

Add a way to easily distinguish:
1) asserts that verify test data has been set up correctly
from
2) asserts that actually test Perspectives functionality.

Convert existing setup asserts to use the new function.
Unit tests - Add setup asserts for several other tests

All of the data needs to be valid before we test with it.
Unit tests - Add tests for Pers_client_policy.inconsistency_check()

Note that one test case currently fails:
"Max timespan cannot be greater than check length".
That means the tests are doing what they should - uncovering bugs! ;)
I will fix the incorrect behaviour shortly in the next commit.
Pers_client_policy - Add sanity check so max_timespan cannot be larger than check length
Unit tests - Add more sanity checks to 'weakly seen' data; use variables to keep data consistent
Unit tests - Rename variable

The names 'day_first_seen'/'day_last_seen' are more clear
now that the start and end variables have been corrected.

Also increase day_first_seen from 3 days ago to 4;
so we can safely subtract enough from day_last_seen
yet have day_last_seen still be >=1 (so it is valid test data).

Add sanity checks to test data:
- check lengths >= 1
- quorum sizes >= 1
Unit tests - Fix 'weakly seen' test

Don't allow check_length to be inside the [key start: key end] time window.
We want to test when check_length does not reach far back enough
to include the observation's ending time.
Unit tests - Replace multiple time calls with existing time variable

No need to query the current time more than once here
Pers_client_policy - Copyedit function comment

Hopefully this is more clear
CHANGELOG - Add change notes
Merge pull request #155 from daveschaefer/hacking_4.6_fixbugs_part_two

Hacking 4.6 fixbugs part two