Initial commit (Non-functional)

There are still a lot of changes to come.