Nawqaan 232

Reflecting users initial and subsequent constituent selection in the MRB load-at-a-glance graph popup. Basic error handling implemented too. Data retrieval and actual plotting pending.
We can't use sugar's Array.remove to remove functions from an array in the way you suggest. If you pass a function to Array.remove, it does not check each element in the array for strict equality to the function you passed in; it /runs/ the function you passed in against each element in the array and removes array items based on the return value of the function. http://sugarjs.com/api/Array/remove

I considered writing it:
```
self.unobserve = function(handler){
   var originalLen = handlers.length;
   handlers.remove(function(eachHandler){ return handler === eachHandler;});
   return originalLen !== handlers.length;
};
```
But I thought that would be more confusing for subsequent devs.