Remove web before bashing the map

When smashing at the map, remove webs first, when there are no webs continue as normal.
Merge branch 'webs-smash-em' of https://github.com/BevapDin/Cataclysm-DDA into web
Limit number of profession items printed so they stay within the window.
Revert "Too many items fix for professions."

This reverts commit 63ea4a97b18d6424c52c2460008091818ec782aa.
Now the window will handle having too many items to list properly.
Merge pull request #8132 from kevingranade/fix-profession-item-listing

Fix profession item listing
Speedup tiles.

1. omit drawing to game::w_terrain if tiles are in use.
cata_tiles ignores w_terrain and w_terrain is never draw in this situation.
That is because draw function (curses_drawwindow, called by wrefresh) has as special case for tiles mode (that calls cata_tiles) when drawing w_terrain.

2. omit an addtional call to map::build_map_cache from cata_tiles, already done in game::draw_ter
cursesport: fix bugs

Handle control characters (newline) as separate character.
Move check for valid cursor position before checking for multi-cell character.
Remove some tabs from displayed string