Debug: Automatically prefix the passing time to all log messages

This wraps the log() function from the ‘lovelog’ library with a
private function of our own.  It performs the same thing, and invokes
the original log(), but first it prefixes to the message the amount of
seconds that have passed.  This gives us a running clock down the
left-hand margin of the log and that is useful for debugging, as we
also have a clock in-game which we can compare with the log data.
Debug: Only record log output when we enable debugging
Pattern: Remove the manual timer from uses of the log() function

The Debug module now automatically keeps track of the clock and
prefixes that to all log messages.  So we can remove all manual values
with this patch and rely on that.
Merge branch 'ejmr/toggle-logging'

* ejmr/toggle-logging:
  Pattern: Remove the manual timer from uses of the log() function
  Debug: Only record log output when we enable debugging
  Debug: Automatically prefix the passing time to all log messages
Use xml.getNumberOrNil() to simplify code that loads enemies from XML
Enemy: Simplify defining boolean properties

We introduce a utility method for XML nodes that will check a child
node for a ‘true’ or ‘false’ string and turn that into the
corresponding Lua boolean.  We use this utility to simplify the logic
for loading enemies, as it allows us to eliminate the pre-existing
conditional blocks we needed in order to deal with situations where
the child node does not exist (as many are optional).
Remove all powerups and the relentless prototype

In terms of code and logic the behavior of items and powerups are
almost identical.  We decided to get rid of powerups instead of having
two nearly-equal implementations of objects that only have semantic
differences.  The relentless prototype was the prototype which used
powerups the most and so we also remove it.

With this patch in place we will move forward using ‘item’ everywhere
that we used ‘powerup’.  This patch performs one such renaming for an
existing property: ‘itemCollectionRadius’.
Scene Prototype: Do not crash when sorting scenes

The current function we use to sort the scenes crashes, and honestly I
don’t understand why.  But replacing it with this more simple function
corrects the problem.
Merge branch 'ejmr/simplify-enemy-construction'

* ejmr/simplify-enemy-construction:
  Enemy: Simplify defining boolean properties
  Use xml.getNumberOrNil() to simplify code that loads enemies from XML
Merge branch 'ejmr/remove-powerup-code'

* ejmr/remove-powerup-code:
  Remove all powerups and the relentless prototype
Merge branch 'jeff/new-game'

* jeff/new-game:
  Modify stardust visuals
  Update comments for background.lua.
  First Mission background now scrolls.
  Added starfield background to the first mission
  Fix bug where player shoot direction would persist from level to level
  Modified art for mosquitoids
  Modified interceptor art
  Enemies fire more closely at the player.
  Floating Texts now move "away" from the base being guarded in radial guardian mode instead of always moving straight up.
  Butterfly Bombers now select their visual from a few different decorations
  Use neon version of Halcyon sprite
  Fix bug where air magic rendering would mess up if the player used it just after taking damage
  Added DEBUG_RENDERING flag for enemies.
  Restyle butterfly bomber image
  Backgrounds can now be tiled or scaled.

Conflicts:
	src/Prototypes/relentless/relentlessPrototype.lua
Make drone pattern trickier
Fix bug causing assert in Luvent

Make sure all turrets in the first mission use the same scheme for flagging their destruction
Make drones harder
Added debug rendering for behaviors to the base Actor class.
Reset player health and mp when a level starts.
The Battlefly now uses its own pattern file
Increase battlefly bullet damage
Fix bug with behavior system

Now behaviors should work on enemies and other non-unique actors.
Debug rendering for actor behaviors now shows the actor name