FA in D3

HTML

<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<script src="//d3js.org/d3.v3.min.js"></script>
<script src="//rawgit.com/herrstucki/5684816/raw/2318a9f6b9ac814d60f6b1f784f4b17c3e22ac3a/d3-grid.js"></script>
<script src="https://cdn.rawgit.com/eligrey/canvas-toBlob.js/f1a01896135ab378aa5c0118eadd81da55e698d8/canvas-toBlob.js"></script>
	 <script src="https://cdn.rawgit.com/eligrey/FileSaver.js/e9d941381475b5df8b7d7691013401e171014e89/FileSaver.min.js"></script>
<svg></svg>
<button id="update">Update</button>
<button id="export">Export</button>

JavaScript

icons = [{"name":"Glass","id":"glass","unicode":"f000","created":1,"filter":["martini","drink","bar","alcohol","liquor"],"categories":"Web Application Icons"},{"name":"Music","id":"music","unicode":"f001","created":1,"filter":["note","sound"],"categories":"Web Application Icons"},{"name":"Search","id":"search","unicode":"f002","created":1,"filter":["magnify","zoom","enlarge","bigger"],"categories":"Web Application Icons"},{"name":"Envelope Outlined","id":"envelope-o","unicode":"f003","created":1,"filter":["email","support","e-mail","letter","mail","notification"],"categories":"Web Application Icons"},{"name":"Heart","id":"heart","unicode":"f004","created":1,"filter":["love","like","favorite"],"categories":["Web Application Icons","Medical Icons"]},{"name":"Star","id":"star","unicode":"f005","created":1,"filter":["award","achievement","night","rating","score"],"categories":"Web Application Icons"},{"name":"Star Outlined","id":"star-o","unicode":"f006","created":1,"filter":["award","achievement","night","rating","score"],"categories":"Web Application Icons"},{"name":"User","id":"user","unicode":"f007","created":1,"filter":["person","man","head","profile"],"categories":"Web Application Icons"},{"name":"Film","id":"film","unicode":"f008","created":1,"filter":"movie","categories":"Web Application Icons"},{"name":"th-large","id":"th-large","unicode":"f009","created":1,"filter":["blocks","squares","boxes"],"categories":"Text Editor Icons"},{"name":"th","id":"th","unicode":"f00a","created":1,"filter":["blocks","squares","boxes"],"categories":"Text Editor Icons"},{"name":"th-list","id":"th-list","unicode":"f00b","created":1,"filter":["ul","ol","checklist","finished","completed","done","todo"],"categories":"Text Editor Icons"}]


icons2 = d3.nest()
  .key(function(d){return d.id})
  .map(icons)

svg = d3.select("svg")
  .attr("width", 500)
  .attr("height", 300)

points = d3.range(30).map(function(i) {
  return {id: i}
})
 
pointGrid = d3.layout.grid()
  .rows(5)
 ...