Best practise for adding a new form into account page

I would like to add a new form to the account page where the user can change his password and his user data. On the left page side of the account page there should be a new link like: “change email” which opens the new form. I want to put the changing of the user’s email in this new form for some reasons. Is this possible with server side validation of form fields and so on…???

I already read about some topic like SPI, Freemarker templates, and so on… But either I haven’t understood it yet or I didn’t found a way to achieve this.

Best regards