Здравствуйте!
Я для изучения Javascript  начал разрабатывать небольшой игровой проектик. Структура файлов приведена на картинке. Я понимаю, что когда прект будет завершен надо будет объединить все js файлы в один (по крайней мере те что я сделаю). Но на этапе разработки мне удобнее разделять функционал по разным файлам и в соответствии с паттерном MVС. 
Ниже пример кода одной из моделей 
var LGAME = LGAME || {};
  	LGAME.Card = function(w1,w2){
		var word1 = w1, word2 = w2,
		toString = function(){
            var words = LGAME.Words;
			return "(word1: "+words.getWord(word1).word+" words2: " +words.getWord(word2).word+")\n";
		};
		return {
			toString: toString
		}
		
	}
что мне не нравится:
1. - Строка 01 - я ее вствляю в каждый файл, т.к. иначе надо будет подключать в HTML  файле следить за тем чтобы первым подключался скрипт, где будет задана переменная LGAME 
2. Модели у меня достаточно тесно взаимодействуют друг с другом, думал как функциональность разделить, но пока красивого способа не придумал, паттерны типа медиатора усложняют код. Поэтому иногда в одной модели могут быть строчки типа 05 - обращение к другой модели. 
3. С предыдущим пунктом связана и другая проблема - мне нужно задавать жестко очередность файлов при подключении в HTML, потому что иногда объект модели, которую я использую внутри другой модели определяется в файле подключаемом позже, и поэтому код генерирует ошибку. 
Помогите выработать правильный подход к разработке...
Заранее спасибо.