reschedule should not operate on filtered/suspended/buried

this should fix some issues with rescheduled cards ending up in an invalid
state
remove invalid line
bump sync ver to 6 (see note)

when porting this to other platforms, please ensure you have ported all
changes in sched.py after 2.0.12 first
move version number into libanki
don't say tomorrow for burying until we introduce the new change
include client version in /sync/meta
note rollover problem in unit tests
include client type in cv
option to tag notes in find dupes function
bump sync ver to 7 and change meta return value

- /sync/meta now returns a dictionary
- it includes the following extra fields
- msg: if non-empty, show this message at the end of the sync
- cont: if false, show above message and abort sync
- uname: the user's email address, so it can be stored by the local client to
  show users who have forgotten which email address they used. in the future
  this will be saved only when logging in, so do a conditional access on it
show sync username in prefs screen
refactor second instance detection

- get rid of shared memory check as it was causing problems when an existing
  session was forcefully closed; instead we rely on the socket
- include a hash of the user's name in the key so that multiple users can run
  anki at the same time
scroll to newly added column in browser (#978)
give note types unique name when adding/importing (#325)