Code restructuring
- did a complete code restructuring. Now adding the graph, graph overlay and legend view is done by the BaseChart class and only calls methods which can be overwritten in the child graph classes. This reduced many redundancies and  the layout generation of the views is handled in one location.
- based on the restructuring, the padding attributes are now drawn and interpreted correctly and no chart has to include the padding in the calculation as it is handled in the layout generation.
updated README