Clearly we need to have better documentation about it.
Let me explain broadly the different options you have between layers and sublayers and the motivations behind them. And then we can probably discuss changes on dicumentation and libraries to make it more clear or propose changes to it.
Before 2.1 in CartoDB when you wanted to overlay different layers on a map it was only possible to do it via adding different "tilesets" that loaded separately. This will work well in some scenarios, but it really works bad on others. For example if you had 8 different layers, the performance on the client will degrade very quickly and the number of HTTP requests made will be too many, so the user experience was not good enough. Additionally it was hard to work aroundOn mobile devices you could forget about it, it just did not work. Finally handling interactivity was challenging.
In CartoDB 2.1 we introduced a new Maps API based on the concept that you could have sublayers, which basically are layers that get "fusion" prior to sending them to the client. That way you could say here are my 8 layers, each one with its own SQL and CSS, and you will only get back one single tileset. This work much better for performance, cachability and many other things we have been building.
The reason we called them sublayers is to not confused them with not "fusioned" layers. And you can still keep adding layers separately like you were doing before. In some cases like yours it might make more sense to keep treating the layers separately, and you can keep doing that without problems if you think it works better for your case.
Hope this helps, and I will keep this email also within developers to discuss how to better document the API and the usage, indusing the vizjson documentation.
Thanks.