refactored scope through controllers, abstracted from views