PicBasic will defualt to 4MHz. So if your crystal is running at 4 then you should be OK.
I think it is a good idea to leave nothing to chance and define it at all times.
Code:
DEFINE OSC 8 'Speed of OSC
I also think it is better to set each bit of TRIS?.
0 = Outpuit
1 = Input
Code:
TRISB = $00000000
While you are brushing up on things, these two threads are a must read.
Even if you do not set the fuses in code space this will give you a better understanding of how it all works.
http://www.picbasic.co.uk/forum/showthread.php?t=543
The chip you are using has analog.
http://www.picbasic.co.uk/forum/showthread.php?t=561

Power supply.
9 volt battery is to wimpy. Better off to use a pack of AA if you want to run off batteries.
Check the data sheet of the 7805 to find minimum voltage. At least 2 volt higher than out put.