net_server: 0xff is out of the bound of char, use uint8 instead

* found by GCC 4.7.3
GCC 4.7.x doesn't allow setting a field in a referenced packed struct.

* error message: error: cannot bind packed field
'args->kernel_args::platform_args.platform_kernel_args::apm' to 'apm_info&'
* the reason would be that the reference doesn't have alignment information anymore.
* changed the reference to const for read access, and use the long form for setting a field.
GCC 4.7.x finds that 1 << 31 is a signed integer, use the unsigned notation

* error: narrowing conversion of '-2147483618' from 'int' to 'uint32 {aka long unsigned int}'
 inside { } is ill-formed in C++11
PCI bus manager: changed the type of domain from int to uint8.

* fixed narrowing conversion problem found by GCC 4.7.
devfs: casts as size_t before comparing.

* error: comparison between signed and unsigned integer expressions.
scsi bus manager: casts path_id to uint8.

* added a TODO about create_id() generating int32 ids when we need uint8.
* GCC 4.7 warning fixed: narrowing conversion.
GCC 4.7.x doesn't allow writes in a referenced packed struct.

* error: cannot bind packed field 'image->preloaded_elf64_image::elf_header'
    to 'ELFLoader<ELF64Class>::EhdrType& {aka Elf64_Ehdr&}'
icon-o-matic: converts the result of round() to uint8 to fit in struct rgb_color.

* GCC 4.7 warning: narrowing conversion of '(int)(((ColorPickerView*)this)->ColorPickerView::r * 2.55e+2f)'
from 'int' to 'uint8 {aka unsigned char}' inside { } is ill-formed in C++11 [-Werror=narrowing]
VMAnonymousCache.cpp: changed page_index type to page_num_t

* consistently use page_num_t for page numbers and off_t for offsets and sizes.