Refactored code - moved classes into their own files

Improved file names
Added ability to execute functions
Rather use inheritence for consolidating common functionality

Not the best route but baby steps
New file
Added logic for dependencies

This commit is actually useless since the functionality is still not in
place. Thinking of changing the structure so that the statements have a
recursive pointer to the one before it instead of a list
Changed how siblings are managed

This is hopelessly broken currently, trying to fix
Huh?
Fixed nested connection bug
Success - dependencies added