Only update twice if we are changing tile data

War originally modified each block twice when loading, even if there was no metadata. Now it will only update once if there is no metadata.
Don't modify block type/data if it has not changed
Coalesce many metadata columns in warzone blocks table into one.
- Container, sign, skulls, and more are not just a single column
- Compacting each warzone database after migration from schema v1 to v2 (to get disk space savings, but might take a while for large zones)
- Showing a few decimals on time value in zone reset messages instead of just showing "Reset in 0 seconds" all the time
Attempt at some slight saver speed ups
Merge branch 'master' into nimitz-v2
Merge branch 'no-save-air' into nimitz-v2

Conflicts:
	war/src/main/java/com/tommytony/war/mapper/ZoneVolumeMapper.java
Fix logger format arguments not being applied
Stop saving Air blocks to the database

War now skips over saving Air blocks. Instead, the plugin loads all solid blocks back into the world and then sets each block to air that was not changed.

Benchmarks:
Warzone molecule
Block count 2,487,555
Speed 50,000 blocks per tick
Intel Core i7 @ 3.6 GHz * 8

Before:
File size 70 MB
Reset 23 seconds
Save 16 seconds

After:
File size 54 MB
Save 5 seconds
(no changes)
Reset 4.9 seconds
(set to air)
Reset 31.17 seconds
(set to stone)
Reset 18.23 seconds
Allow disabling of automatic warzone block reset

Configuration key: RESETBLOCKS
Prevent joining zone during reset
Don't reopen the file during a batch reset

Connections to the SQLite warzones are now kept open when iterating a batch reset.
Prevent using chests while capturing flag

Stops duplication of wool.
Store warzone structures in main zone database

Instead of storing strutures in /dat/warzone-x/volume-y.sl3 anymore, they are stored in the main database file created for the warzone in /dat/warzone-x/volume-x.sl3. Tables is created for each structure, with the prefix being structure_HASH_. The HASH is a string hashCode run through a bitwise AND with Integer.MAX_VALUE, to prevent negative values from showing.

This is a step on the road to storing everything in a single database for the warzone. My plan is to eventually store warzone configuration in the database as well. In the ideal setup, there would be a table for teams, structure definitions, loadouts, and materials. Sadly, for configuration, we would most likely have to store teamcfg & zonecfg rules in a key-value table, unless @taoneill or @grinning has another idea.

I still need to do testing to make sure everything is backward-compatible. This conversion happens properly for nimitz-format zones and zones in the process of converting from degaulle format. When messing around earlier, I found that .txt configurations were broken due to numbered teams. I need to take a look at that. Most likely it is due to WarzoneTxtMapper not being maintained. The loader will probably have to be modified to load the new volumes and teams properly.
Merge branch 'master' into nimitz-v2

Conflicts:
	war/src/main/java/com/tommytony/war/Warzone.java
Merge pull request #718 from taoneill/nimitz-v2

Optimize nimitz file store

Tested on bukkit server 1.7.2 with a warzone originally created with war 1.7.4, therefore upgrade works properly.