Give ASSERT the proper meaning
Allow debug messages to be turned off
Add debug build target