1) Почитайте
https://developer.apple.com/Library/ios/documentation/UIKit/Reference/UITableView_Class/Reference/Reference.html
Это обычный UIScrollView, он содержит в себе (subviews) в нашем случае UITableViewCell, ну еще дополнительные плюшки)
2)
UITableView *tableView = ...;
UISearchBar searchBar = ....;
tableView.tableHeaderView = searchBar; // Теперь SearchBar всегда над вашими ячейками.
В Safari, скорее всего, используется обычный кастомный View и он не как не связан с UINavigationController-ом и UINavigationBar-ом
Все прячется с помощью обычных анимаций
//Псевдокод
//Y = высота экрана + высота View
[UIView animateWithDuration:<#(NSTimeInterval)#> animations:^{
view.frame = CGRectMake(x, <Y> ,width,height);
}];
На счет MVC, все очень просто.
Пользователь видит представления(views), с их помощью он общается с контролером, а контролер уже общается с Моделями(Models),