feat progress: add circular and linear progresses

http://www.google.fr/design/spec/components/progress-activity.html#progress-activity-types-of-indicators
We do not use `this` in services. Instead, we declare the API at the end of the service declaration:
```js
return {
    method1: function1,
    method2: function2
};
```

This way, it's easier to make public a new function, we can have different names for the API and the local function and the file is more consistant with only function statement, and no function expression.