The menu is built in JavaScript in the CORE.js file. If you need to add a new menu item, you are going to have to overrides this file... Not cool. 

A better approach is to **use JavaScript to override the function** which creates the menu in Core.js. You will just need to reference your file after the Core.js file and be careful with the defer loading.

---
About the version display form, the template is defined in `DefaultTemplates.ascx` with the id `DocLibDisplayFormVersionToolBar`.

I guess you could overrides the default rendering by your own.