Add nested message/enum support