code: public static List<SymbolDescription> readSymbolDescriptions()
  			throws IOException {
  		String filename = "importcategories.txt";
  		List<SymbolDescription> list = new ArrayList<>();
  		List<String[]> lines = readArray(filename);
  		String category = "";
  		String subCategory = null;
  		for (String[] array : lines) {
  			if (array.length > 0) {
  				String mainItem = array[0];
  				if (mainItem.startsWith("[")) {
  					category = mainItem;
  					subCategory = null;
  				} else if (mainItem.startsWith("<")) {
  					subCategory = mainItem;
  				} else {
  					String description = null;
  					if (array.length > 1) {
  						description = array[1];
  					}
  					list.add(new SymbolDescription(mainItem, Optional
  							.fromNullable(description), category, Optional
  							.fromNullable(subCategory)));
  				}
  			}
  		}
  		return list;
  	}
docs: Reads a list of symbol descriptions
  
  @param filename
  @return list of SymbolDescriptions
  @throws IOException