Upgraded to latests chart.js and refactored Chart classes

Pull request to the right branch