Feature/toolbar refactoring

refactoring of toolbar. It's nothing perfect ,but much cleaner and understandable approach to the toolbar. state is now managed over $scope.menu to handle the UI and from ToolbarService.getState() to get the configs.

future refactoring should be to introduce AppState that will contain all this, instead of the Toolbar being accessed to from all over the place. Who know's maybe some day we'll have something better than just one toolbar (a mind reader, for example!)
setting the default values on the object that was handed into the function feels kinda wrong. or is there a reason for doing it this way, i don't get? my suggestion would be something along the lines:

var lineConfig = {};
lineConfig.lineJoin = config.lineJoin || 'round';
lineConfig.lineCap = config.lineCap || 'round';
return new Kinetic.Line(lineConfig);

this way the internals of the function don't mess with the parameter value...