arm: create a demand map area of size 640K

The API has 'malloc' but no 'free': this works for x86 because mini-os
can use the pagetable to see if a page is free or not. I don't know
whether we can use the same trick, so instead create a simple array to
track business.

Note since there is no 'free' API in gntmap.c, we leak allocations. This
is ok if we're using protocols like vchan which allocate up-front, but
would clearly be a disaster for protocols such as netfront/back or
blockfront/back.

Signed-off-by: David Scott <dave.scott@citrix.com>