Remove BEFORE/AFTER arguments to for_each_multiplayer_command
Show cloak/invulnerability time remaining on HUD
Print file offset on read error
Split extra-view loop into helper function
Clear SDL_Event before each poll
Store boss gate/teleport segments in countarray objects
Move err_printf newline handling into the function
Move warning_printf newline handling into the function
Rename con_puts length template
Pass computed message length from Error to con_puts
Pass computed message length from err_printf to con_puts
Let PHYSFSX_puts receive optional string length
Use countarray for HUD_messages
Combine nearby d1/d2 guard in powerup.h
Remove unused declaration of Center_names
Rearrange headers to build under all test modes
Convert fvi to use countarray for segment list

Also fixes a bug where seglist could receive wrong elements when
fvi_sub recursive call returns a type other than HIT_NONE.  Bug caused
by badly named variables:

	int ii;
	for (ii=0;i < temp_n_segs && *n_segs < MAX_FVI_SEGS-1;)
		seglist[(*n_segs)++] = temp_seglist[ii++];

The wrong counter is used for first part of the conditional, so
uninitialized elements of temp_seglist could be read back if i
(==n_segs_visited) is smaller than temp_n_segs or elements could be
skipped if i is greater than temp_n_segs.
Simplify visited check in sphere_intersects_wall

Non-segments can never be visited, so check for existence first.
Switch fvi to use a local visited_segment_bitarray_t
Scrub control codes from stdout/file, but not HUD/console