The current approach of needing to create a dedicated -import.html file just doesn't seem to work in practice. This approach forces you into choosing between two options.
1) Put all your -import.html files in your project (which creates tight coupling from components to your project)
2) Package your -imports.html in with your own element. (which doesn't solve the de-duplication issue because you are now importing different html files)
Lately, I've been finding myself using other frameworks such as React and Angular 2 simply because common js modules don't play nicely with polymer.
Possible options:
1) <script type="module">
2) A Set of system.js components. (declarative approach?)
3) a dependencies:{} attribute in the polymer constructor.
A nice article to read about HTML imports: The Problem With Using HTML Imports For Dependency Management.
Per https://www.polymer-project.org/blog/2017-08-22-npm-modules we are adopting option 1 as described in the first post. Sorry for the late response :cry: