Можно делать разные таблички news_ru, news_en и т.д., а префиксы доставлять соответственно по языку пользователя, но тут минус, некоторые поля будут дублироваться, да и при изменении структуры будет гемор.
Можно, как вариант, создать отдельную таблицу для хранения переводов, по типу section_id, resource_id, key, value,
если это только новости то news_id, lang_id, title, content.
По второму, views для каждого языка - не вариант, допустим Вам нужно будет поменять что-то в шаблоне и придется менять это во всех 3, как-то не спортивно :)
Второй и третий вопрос переплетаются, для стандартных системных фраз, да лучше хранить отдельный файл с константами или массивом.
Все что сюда не подпадает хранить в той же БД