Fixed door-curtains in vehicles

Reversed order of checking in vehicle::next_part_to_open and
vehicle::next_part_to_close, as previously you would close a curtain
before a door and open a door before a curtain.

I suspect when the feature had been originally tested there was a
special z level for on_windshield that put them farther outside than a
door, but currently they are at the default z level which is farther
inside than a door.
Visually hide on_roof parts of the vehicle you are currently in

The smartest place to install solar panels is generally on the
interior roof, where they're less likely to be shot at or collided
with.

Unfortunately this also means that every tile of your RV ends up
looking the same.

This PR hides things on the roof of the vehicle you're currently
inside. You can walk around inside, seeing what's inside, as that's
what your character is going to see while they're inside.

Only display of the active vehicle is changed. Other nearby vehicles
display the same way they always have.

A few things (anything not BOARDABLE, notably trunks and empty frames)
are not considered by the existing logic to be "inside" the vehicle
for passenger purposes, and therefore standing in them gives you the
outside view.

Those same parts are the ones you can't step into if you let go of the
controls in a moving vehicle.
Makes the crossbow recipe slightly less wonky.

A rubber hose? Really? And no mechanism to fire it with? Come on,
people.
Made 2-of-same-item apply to OVERSIZE items as well.

Nothing else was changed, so OVERSIZE still ignores every check other
than it being wearable in the first place and not mixing normal and
power armor. In some cases that still leads to silliness, but the
tripling-up check seemed like an uncontroversial thing to pull.

It's oversized, sure, but it's not THAT oversized.
Adds stone bow (bullet-shooting crossbow) item and recipe.

Good for small game, easier to make than the normal crossbow, and
slightly smaller.

http://en.wikipedia.org/wiki/Bullet-shooting_crossbow
Tweak.

Some folks might get confused and think 'bullets' in this case refers to
firearm cartridges.
Merge pull request #7920 from rluddy/it-is-not-that-oversized

Made 2-of-same-item apply to OVERSIZE items as well.
Merge pull request #7919 from Rivet-the-Zombie/crossbow-recipe-tweak

Makes the crossbow recipe slightly less wonky.
Merge pull request #7921 from Rivet-the-Zombie/bullet-crossbow

Adds stone bow (stone-shooting crossbow) item and recipe.
Removes rape joke from soap.

This was unacceptable.
Merge branch 'its-curtains-for-you' of https://github.com/rluddy/Cataclysm-DDA into merge
Merge branch 'vehicle-interior-view' of https://github.com/rluddy/Cataclysm-DDA into merge
Merge pull request #7922 from Rivet-the-Zombie/rape-is-not-a-joke

Removes rape joke from soap.
Merge branch 'merge'
A few price fixes.
Merge pull request #7924 from Rivet-the-Zombie/more-prices

A few price fixes.
Adds missing item spawns for m2010 rifle.
Decouple sandwich-prep & meat-cooking

This reduces the skill & time needed for sandwich-prep, removes the heat
requirement (but not the cutting), calls for cooked meat rather than
raw, and makes the meat/cannibal sandwiches reversible since there's no
reason you couldn't take the meat off the bread and eat them separately.
Merge pull request #7925 from Rivet-the-Zombie/missing-gun-spawn

Adds missing item spawns for m2010 rifle.
Merge pull request #7926 from KA101/steaksandwich

Decouple sandwich-prep & meat-cooking