Resubmitting Steam Special

**What does your instant answer do?**
Fetch steam specials at Steam Store

**What problem does your instant answer solve (Why is it better than organic links)?**
Get to instantly know best Steam offers

**What is the data source for your instant answer? (Provide a link if possible)**
Official Steam Store (http://store.steampowered.com/)

**Why did you choose this data source?**
Steam api

**Are there any other alternative (better) data sources?**
No

**What are some example queries that trigger this instant answer?**
steam specials, steam offers

**Which communities will this instant answer be especially useful for? (gamers, book lovers, etc)**
gamers

**Is this instant answer connected to a DuckDuckHack [instant answer idea](https://duck.co/ideas)?**
Yes, [here] (https://duck.co/ideas/idea/976/steam-sales)

**Which existing instant answers will this one supersede/overlap with?**
 Steamdb perhaps

**Are you having any problems? Do you need our help with anything?**
 Apologies for resubmitting with a new pr, please close #859. Ty.

**\*\*Note:** Please attach a screenshot for new instant answer pull requests, and for pull requests which modify the look/design of existing instant answers.
![special_1](https://cloud.githubusercontent.com/assets/1424236/3209215/7279a7ec-ee60-11e3-87b9-21ee6c780ff0.png)
![updated_steam](https://cloud.githubusercontent.com/assets/1424236/3530548/94343eca-07a5-11e4-9580-5923ec993aa9.png)


##Checklist
Please place an 'X' where appropriate.

```
[X] Added metadata and attribution information
[X] Wrote test file and added to t/ directory
[X] Verified that instant answer adheres to design guidelines(https://github.com/duckduckgo/duckduckgo-documentation/blob/master/duckduckhack/styleguides/design_styleguide.md)
[X] Tested cross-browser compatability

    Please let us know which browsers/devices you've tested on:
      - Mac OSX
        [X] Google Chrome   
        [X] Firefox       
```

Is `!api_result` the only case? What about the case where `api_result` is defined but `api_result.tabs.viewall.items` is empty?