Clean up some bank 3 functions and rename flag action functions.
Move bank 0 into home.asm.
Rename joypad registers.
Rename GetJoypadState -> Joypad.
Label BCD math predefs.
Split out map sprite facing data.
Try to clean up PrepareOAMData.
Split out overworld object movement.
Split out item fragment code.
Recomment LoadMonData_.
Don't hardcode wram sections (except for alignment).

Sprite buffers must be aligned to the nearest $100, so these sections are explicitly defined.
Remove most static wram addresses. Use labels instead.

For unknown addresses, use "w<address>".

Label overleads are still an issue.
More wOAMBuffer references.
Add macro TX_BCD for printing BCD numbers.

This fixes some more static wram addresses.
Use wOverworldMap in macros.
TM_28 in Cerulean script
Merge commit 'd307c854991f5eb24e12935e6906ad81ed244334'

Conflicts:
	main.asm
Merge commit '1ee8de792ba5bf45290a4cb49b6bc3ee6aa539f3'

Conflicts:
	main.asm
Merge commit '52ba96f5f4ec53450a0ff6257ea1040d09b7e537'

Conflicts:
	scripts/ceruleancity.asm
	scripts/mtmoon3.asm
Merge commit '40c17c906b2b3f65b3b04b1933b90238a7ac5566'

Conflicts:
	audio.asm
	engine/battle/14.asm
	engine/battle/15.asm
	engine/battle/core.asm
	engine/battle/e.asm
	engine/menu/main_menu.asm
	engine/menu/naming_screen.asm
	engine/oak_speech.asm
	engine/oak_speech2.asm
	engine/palettes.asm
	engine/titlescreen.asm
	home.asm
	main.asm
	scripts/mtmoon3.asm
	scripts/museum1f.asm
	scripts/oakslab.asm
	scripts/pewtercity.asm
	scripts/pewtergym.asm
	text.asm
	text/maps/mt_moon_b2f.asm
	wram.asm