Hey, i know how you feel. My 'best' friend and i were completely inseparable; we'd be together all day long (she's a year older than me and going onto her 2nd yr of uni, where as im starting this year) and so we were together at school and afterwards (also neighbours coincidentally!). But ive realised that she used to take me for granted; telling me to rush to her house quickly and calling me if i got there in 3mins rather than 1min - and she would NEVER arrive punctually to my house, or when we had to go out pick me up on time.. Little things like that got to me, and since she's gone to uni, we've lost touch a lot (due to various other reasons.. V V complicated) but because ive realised that ive had enough of being the little follower; doing whatever she wanted, never being able to have a say in anything and being taken for granted.. Now, almost a year on, we've lost touch because ive realised how different we are; she's changed since uni and ive woken up. Even though when she comes back, we've met up and all, were not at all as close as before..
So what i would suggest you doing is seriously thinking about the future of your friendship; sounds to me she is also taking you for granted and if she gets into her (what seems to be) selfish strops, then ignore her and do what you want to do. If you continually give in to her, she is treading all over you, and in the end, you're going to end up hating her rather than loving her as a friend. Or if you feel like you need to get it off your chest with her, speak to her and tell her you've had enough of her behaviour towards you.. Might make her see that you're too important to lose as a result of her disrespectuful behaviour..
Although must admit, i had a friend over for the summer for a week and by the end of it i got a bit tired of her: its different being with your friend for a long time because you might think you know them 100% but living with them is different. If she's like this all the time though, then confront her?
Anyhow, hope it works out well, xxx