input: Write a function to create a web crawler in Python that starts from a given URL and follows all the links it finds on that page, while also scraping the content of each page. The function should use the `requests` and `BeautifulSoup` libraries for HTTP requests and HTML parsing respectively. Ensure that the function handles the crawling process iteratively and stores the visited URLs in a set to avoid revisiting them.
  
  assert crawl('http://example.com')==True
  assert crawl('http://invalid-url.com')==False
  assert crawl('')==False
output: def crawl(url):
      if not url:
          return False
      try:
          import requests
          from bs4 import BeautifulSoup
          visited = set()
          to_visit = [url]
          
          while to_visit:
              current_url = to_visit.pop(0)
              if current_url in visited:
                  continue
              visited.add(current_url)
              
              response = requests.get(current_url)
              if response.status_code != 200:
                  return False
              
              soup = BeautifulSoup(response.text, 'html.parser')
              # Scrape content here if needed
              
              for link in soup.find_all('a', href=True):
                  new_url = link['href']
                  if new_url.startswith('/'):
                      new_url = current_url + new_url
                  to_visit.append(new_url)
          
          return True
      except:
          return False