finish removing business logic from model
use local storage