add has_one support, add options support, update/fix readme