best best I would like to think some more on this issue of 'information'.
There are problems in discussing it due to the different usages of the word 'information'. I did a graduate course on information theory and so I am very aware that I might mean a different thing when I use it. So I will try to be as explicit as I can be in the following - and please lets not all go nuts over the semantics if we can possibly avoid it. I will use quote marks when I realise I am using a term that might be misinterpreted / has a different technical to layman meaning.
The key thing I would like to talk about is that information is present at very many different levels in biological systems. These levels are often about length scales / time scales.
There are several sets of information contained in DNA, and many of them are 'overloaded' (perhaps interleaved is a better layman word for this).
The main information content is in the 'words' comprising 3 base pairs that code for amino acids.
You can code for the same amino acid in different ways. It is possible for a mutation in the DNA to produce exactly the same protein when transcribed. This 'redundancy' in the system means that the DNA is carrying another layer of information in the specific coding of each amino acid currently present. This is often a control for rate of mutation as some base pair combinations are more frequently
There is also information on where to start and stop transcribing.
The same sequence can sometimes be read in different frames. Imagine reading this sentence but with each work starting with the last letter of the previous word and losing its last letter to the next. Or sometimes read in the opposite direction. So you can code for completely different things in different 'reading frames'.
There are chunks of code that are used to give a volume dial determining the rate at which a particular sequence is transcribed. This is the beginning of the next level in the hierarchy of information.
In a very real way there is no single part of the DNA code that says 'make a leg'. This is a process organised at a scale above that of individual cells. It is determined by cells communicating with each other and organising, and moving in response to chemical gradient they are setting up themselves.
This is why it is both easier and harder than you might expect to add an extra leg. It is easier because you just have to change some very small levels of specific chemicals and you can fool the organisation process. It is hard to do it in a controlled way because it depends on so many fine balances of different process all of which are coded for in all the cells involved.
You cannot give a dog wings by putting in the bits of bird DNA that code for the proteins found in wings. You have to also persuade the whole organism to 'express' wings in its development.
It is almost certain that one day there will be an ancestor of todays dogs that has wings. It will have gotten them by the slow small steps approach that currently gives us squirrels and fish that can 'nearly' fly. Flaps of skin that get bigger and bigger and then more feathery....