If your final goal is migration to SharePoint Online (SPOL) you definately need to think this into your branding approach.
WebTemplates were our choice for SharePoint 2010 on-premises solutions, since they have a much better upgrade story than custom site definitions. We have also long ago dropped the declarative approach for other artifacts and for SharePoint 2013 we have dropped solutions and features all together. As mentioned (especially in comments) in Vesas article about declarative/code solutions it is mentioned several times that many of the problems with the declarative approach is due to features and solutions that may or may not be retracted/removed.
Our approach is maybe a bit extreme, but we have developed a complete framework for deployment in PowerShell that uses CSOM in SP2013.
This approach means that we use the exact same approach for branding on-premises and cloud solutions.
Since what you can do in SPOL is limited compared to on-premises, we do not use templates at all. Instead we brand using custom master pages, page layouts and themes.
This means that our minimal branding "package" simply is a couple of master pages (V15 system and default master), some custom page layouts, some js files (angular and jquery), some custom CSS files (since themes just doesnt cut it) and custom theme (.spcolor and .spfont files).
We then as part of our module has code that uploads the artifacts to the relevant galleries and libraries, code that apply themes, content types, masterpages etc but that is really mostly convenience so that we can do reproducable deployments across environments. You can choose to do all this using the browser or even (god forbid) using SharePoint designer.