doc(architecture): Add architecture doc