Now, when one of the major coins move they all move with it. My first question is how is this happening? when the demand for bitcoin goes up and the price goes up, why are pretty much the top 50 coins going up as well? Same with when the price goes down.
There is one important thing you are missing here.
When you see that all coins are either green or red, it is because you are viewing their value in 'USD' on CoinMarketCap.
Now when the price of Bitcoin rise, other coins usually remain stable or fall. But since the value of Bitcoin is increasing in terms of USD, value of alts also seem like increasing.
I give you example. Suppose Bitcoin is $8000 and Ethereum is 0.03 BTC or $240. Now Bitcoin increases by $300 and reaches $8300 and ETH falls to 0.029 because investors put their money out of ETH and put it in BTC. Now, in reality ETH price has fallen but when you view it on CoinMarketCap in 'USD' market, it will show ETH value in green too becuase in terms of USD, it has risen by $0.7.
So whenever Bitcoin goes up, just compare the percentage of rise with other alts. Usually the percentage of rise of other coins is lower than bitcoin.