Input Based Language Learning