Refactored the Chart modules to be more generic

Now, you still can have the User Chart unchanged, but you can also use the BaseChart and BaseCharts objects to create lots more modules as needed.