Various improvement

cleaned up js with new eventable mixin
save single attribute clean up
added widget tools