The thing I'm stuck on right now is, when the car crashes, how to get it to display the 'car' embedded into the wall right at the point where it crashes. So the 'car' can't just show up somewhere in the middle of the barriers, if it crashes it has to be shown embedded in the place where it would have hit.
You could just overwrite the map array at the (x,y) the car crashed at by changing it from a 'X' to an 'O'. Then, just check for both values in your collision detection (or go the opposite way and check for an empty space at the next position, rather than a wall).
I'm not sure what you're suggesting. I kinda get that I have to "go backwards" from the point the car would be at inside the wall, but how do I know which way backwards is?