Initial implementation of Blocks. Updating is still TODO.