use angular modules instead of returning functions that must be called