Refactored code to neaten up object structure

Still some scoping issues that could be made neater
Added transistions for changes in the graph
Added the ability to add concepts after concepts

Click the lower semi-circle of a concept and new concept,
dependent on the clicked concept, will be created