I'm not one to really talk about on this subject, as I am no where near to that level (nor do I have the desire; way to many other things on my list), but...
I think you would do yourself a favor and study what other people have done; just pick a different processor outside of the family to study what they did, to apply the principles to your effort (even if it has already been done before). For instance, find out how the Arduino was ported to the ATMega1280 or something, then apply those steps to the ATTiny processor you are targeting.
Study the datasheets like a fiend.
That would be how I would approach it if I were to take on a project like this. It sounds like you are in for a wild (and possibly hair-pulling) ride! Good luck with the effort!
how hard is it to port Arduino to another chip (like an ATtiny)?
That depends on how much you need to port. For example, one of the things that vary across the AVR line is the number and type of timers, so it may be possible to port to those CPUs, EXCEPT you'd only have one PWM output (or none.) Or no A-D inputs.
one would have to create a bootloader and modify the core files
One of the other issues is that many AVR chips will not support a "bootloader", or not have room for one.
As a starting point, look through the "core" files and see which parts have "conditional" compilation based on the CPU type...
Sometimes similarity breeds confusion. You might find it more "instructive" to look at some completely different CPU (PIC, MSP430, ARM, Freescale, 8051, whatever you can find that has a C compiler) and think about what would be needed to port the core libraries to THAT, instead of some other AVR with less obvious differences.