SQL SERVER 2016 side by side with previous versions
Each instance is a separate service with its own set of folders, system databases, agent and binaries so they do not directly impact each other.  All of the instances, however, will share the management tools, and older versions of the management tools cannot manage newer instances.   You can avoid trouble by installing the oldest version instances first and install the newest version last.  This way SSMS, SSCM, Profiler, etc will be the 2016 version and capable of managing all previous versions.

Another thing to consider is your Max Server Memory setting.  You want to make sure that the combined total of all your max server memory settings minus the total memory in the box, will still leave enough memory for the operating system and other applications.

The last thing I would consider is your CPU.  It is possible for instances of SQL to so consume resources that another instance could effectively be 'starved'.  A work around for this is to set affinity mask so that each instance is assigned a set number of CPU.