German cars might not have the best reputation for reliability, but they aren't all bad. Here are some models that can last 300k miles.