Imagine a house with three persons in there. The first is Jack, the second is Mark, the third is Lydia. Mark and Lydia stand at one end of a room, Jack is in the other. Mark says: "Come here Jack (Иди сюда)" after Jack had done so Lydia said: "Okay, guys. I need to go. See you all later" So as she had done so, guys now can say that she went away from there (Она ушла отсюда).
During the guys' converstion Mark said: "Hey, I want to drink, I think I'll go to the kitchen to poor a glass of water.Yes, I'll go there (Да, я пойду туда)" After Mark had done so he came back to Jack and asked: "What were you doing here while I was gone?" (Что ты тут/здесь делал, пока меня не было?)
So to sum everything up:
сюда - to the spot you're at from another place;
отсюда - from the spot you're at to an unknown location or to a location which you don't care of; as in - Get outta here! (Иди отсюда) - I don't care where you go, just go away from here; BUT you can still specify a location if using theis word like in: - Унеси это отсюда в комнату - Take that away from here and bring it to the room
тут/здесь - at the same spot you're at;
тута - the coloquial and not very good variant of тут;
туда - from the spot you're at to another spot which is known;
As for the variations of the preposition "о", the only thing I can tell you for sure is that "о" is used in front of words that starts with a consonant sound, and the sound word is a crucial word here, cause some of our vowels are actually a combination of j-sound as in (jank) and a vowel;
О елке, о яблоке --- е is a combination j and e (as in bed) sounds, я is a combination j and u (as in cut) sounds. (But don't think that they sound in Russian the same way they sound in English, I just provided the most similar sounds for you to understand the idea)
The above examples starts with a vowel, but the starting sound is actually the consonant J-sound, so the 'o' version is used.
Об is used in front of words that start with a vowel sound:
Об Америке, об этом, об облаке etc