well with step 2 you still can have your url's index.php?page=blah by using switch statements...
like this
switch($_GET['page'])
case book:
include("book.php");
break;
// etc etc for all other links
default:
include("defualt);
break;
now with this if we dont have page= a blank or no page to equal anything than our defualt will get used. Now this is a kinda good approach if a visitor has a wrong url or something.
Now i hope that helps you...
Oh and yes, try to keep files as small as possible, the smallest your code can be for huge applications as well as graphics the better upload time....