finish preference class; delete two useless methods in reader.py