I'm still testing out, but about 1. that you mentioned, you could use the show and hide field code; you could show and hide fields depending on the choice that users made.
There are few articles about this so you should use these to apply it to your case:
Kintone Developer Program - Show and hide fields using checkboxes
Kintone Developer Program - Show and hide fields on a questionnaire
I will keep on looking into 2. and 3.