fix reify(:has_one => true) data persisting issue and add more test for data persisting