update readme to include a block describing basic design pattern