Katsuo,
1) You will never know how much time service or page needs to load.
2) you can attach your own progress bar without any problem
3) You can try to override existing progress with your function to use it.
4) You can use this plugin: http://plugins.jquery.com/lazyload/