block: add block layer

Signed-off-by: Micky Ching <mickyching@gmail.com>