Is there a simple way to add a web part page to a Sharepoint site programmatically, using either the object model or web services? It seems straight-forward to create lists
Is it a collaboration/publishing site? If so you can the following blog articles should help: