[CORE] Make vmm_host_ram_alloc() more generic

Currently, vmm_host_ram_alloc() allocates RAM aligned to page size or
aligned to request size itself. This is very inflexible because we may
want to allocate XYZ MB of host RAM aligned to ABC boundary.

This patch makes vmm_host_ram_alloc() flexible enough so that we can
allocate host RAM algined to 2^align_order boundary where align_order
is specified as parameter of vmm_host_ram_alloc().

Signed-off-by: Anup Patel <anup@brainfault.org>