A. Yes. You can do that with password protected pages and also delayed action. Both features exist while editing the page. For password protected pages they are assigned to the new group simply by visiting the page. For delayed action they are transferred to the new groujp after they have viewed the page for X amount of seconds.
Also, you can setup an optin form and then have it so when they fill out the form they are added or transferred to a new contact group (the form fields can be hidden and pre-filled and then just show the button).
Also, there is an API that can be used to simply create custom situations where a contact is automatically assigned to a new group. You can view the technical details for the API under our API documentation or you can create a support request to have us do it for you.
Also, several of our tools include the ability to change contact group based off an action in the tool (exa: Taking a survey with the survey tool). Anytime this option exists a drop down will appear where you can define if and if so what contact group the contact should be assigned to.

A. You are able to define a tracking campaign; the tracking information is included in the notification email that is sent and also stored in the members Area.
There is a section in the members area where you and your members can create url's to track different tracking campaigns when using a capture page.
Also, you can specify the tracking yourself by adding a hidden field to the form with the name "tracking" and for the value the title of the tracking campaign.
Also, you can append tracking details on the end of a URL of a page. For example if your URL looks like this:
domain.com/page1.php?user=myusername
To add a tracking campaign titled facebook you will add it to the end like this:
domain.com/page1.php?user=myusername
&tracking=facebook