made directive more 're-usable' by decoupling the data model from the directive module