quite posibly an easier way to thik about it
its very simple, inorder to declare a varible,, you must know how large ( within reason) it will be , i believe steve already gave ya a technical explanition, so i wont go into which is for what amount etc
for an led, im pretty sure its on or off, so bit should work, but for instance,, lets say the varible is reading a rotation , if theres thousands of rotations, word would be used, all it is doing ,, is telling the chip how many variants there is, and how to store it, is the answer going to be between 0 and 1, 1 / 256 etc etc,,
keep in mind that not all pic's consider a word the same amount,, as per there total memory might not facilitate the standard value of word, but for the most part , bit and byte will remain standard,
i might even be able to provide some documentation which more clearly explains how this works, but i warn ya , theres alot of info, and unless your wiling to read it blind for a few weeks , it will just overwhelm ya,, but eventually it al catches up , feel free to pm me with some contact info, ill see if i cant hook ya up with some good docs