memory: only resize dirty bitmap when memory size increases

Signed-off-by: Juan Quintela <quintela@redhat.com>
memory: cpu_physical_memory_clear_dirty_flag() result is never used

Signed-off-by: Juan Quintela <quintela@redhat.com>
bitmap: Add bitmap_zero_extend operation

Signed-off-by: Juan Quintela <quintela@redhat.com>
memory: split dirty bitmap into three

After all the previous patches, spliting the bitmap gets direct.

ToDo: Why can't i include "exec/memory.h" into cpu-all.h?  This is the
      reason that I have duplicated DIRTY_MEMORY_NUM.

ToDo2: current bitmaps have one int as index, this limit us to 8TB RAM
       guest, Should we move to longs?

Signed-off-by: Juan Quintela <quintela@redhat.com>