Hi,
Sorry but the volume of forum posts is too much for me to answer every question, especially long lists of open ended questions. Not to mention today is Thanksgiving and I should be relaxing not answering forum posts.
1. You should not modify any mojoPortal code or mojoPortal tables. As soon as you do that you have created a fork and will have a hard time ever upgrading without losing your changes. All your custom code should be in your own projects and if you need custom tables you should create your own. You should read the developer documentation and you should study how existing features work to learn how to build your own features that can plug in. If you build a feature that plugs in you do not need to do anything to use the built in authentication since users will sign into the mojoportal site.
2. We do not have built in support for different kinds of users registering, though you can add custom profile properties and make them require for registration. You can create custom Register page in a separate project to do whatever you like and use a post build event to copy it up to replace the built in version, but then you will need to maintain it and always produce your own build to package mojoPortal with your custom features included.
3. Custom HttpModules can be plugged into the pipeline via the Web.config whether they affect page content or cause problems depends what they do. You should not plug in any httpmodules unless you understand exactly what they do and how they affect things.
4. Only CMS page are in the menu. Generally you implement a feature as a UserControl that can plug into a CMS page and this serves as the entry point to your application. From there you can link to any supporting pages of your feature and pass in the pageid and module id to keep the menu highlighted on the current page and to take advantage of built in methods of our base page for enforcing page and module level security. Though it is also possible to create a CMS page in the menu that really is just a pointer to your custom page by putting in the full url of your custom page as the url for the CMS page, but this is not really the recommended approach, it can be used.
5. MyPage is what it is, if you don't like it don't use it. I built it back when 2.0 .NET came out (around 2005) and WebParts seemed very interesting new feature at the time but less so now. I thought there would evolve an ecosystem of re-usable webparts for asp.net like Sharepoint webparts has but that never happened, it never really caught on and I don't know of any third party WebParts other than ones for Sharepoint. Whether something is easy to develop depends on the complexity and the skills of the developer. mojoPortal is not meant to be all things to all people. It is meant to make it easy to have a web site for running a business and to be extendable but it is not meant to be a foundation of the next Facebook or MySpace.
Hope it helps,
Joe