Версии Android API обратно совместимы в определенных пределах. Это буквально означает что можно собрать приложение для Android 4.4.2 (targetSdkVersion == 19) используя Android API с версией 22 (compileSdkVersion == 22). При этом, на твои руки полностью ложится ответственность за предотвращение вызовов новых функций из Android 5.1.1 на более древних платформах. Иначе приложение упадет, автозатычек ни кто не предоставляет.
Поэтому, да, можно пользоваться свежими версиями Android API для сборки под старые версии ОС Android.
Относительно предупреждений о разных версиях, у тебя compileSdkVersion указана строго, а вот пакет "com.android.support" имеет гибкую зависимость на повышение версии. Скорее всего ты уже закачал свежие API для Android 5/6, из которых теперь и берется пакет "com.android.support" при сборке.