programmatically adding view controller and views