Added main controller

Signed-off-by: mrahmiao <mrahmiao@gmail.com>
Added part of the delegate method declarations and the menu state enum

Signed-off-by: mrahmiao <mrahmiao@gmail.com>