WIP: Platform Specific Config

We want to move ahead with more aggressive platform-specific styles for iOS, Android, and soon Windows Phone and BB 10.

What this means is that by default the style on Android will have left aligned titles, not use the sliding animation for navigation, not bounce in scroll (already done), and have tabs on top (as an example).

Like this mockup:

![mok](https://cloud.githubusercontent.com/assets/519526/3098096/979eb084-e5e7-11e3-9cca-0853a40b7699.png)

### API

To that end, we need to come up with a nice API for handling platform specific changes and being able to configure them. `$ionicPlatform` is already a provider which makes it easy to inject into the `config()` function. What should the API look like for this?

Here is my proposal:

```javascript
angular.module('myApp', ['ionic'])
.config(function($ionicNavBarConfig, $ionicTabsConfig) {
  $ionicNavBarConfig.transition = 'fade-out';
  $ionicTabsConfig.style = 'tabs-striped';
});
```

This allows you to override the platform defaults if you like.

- [ ] Settle on API

### Platform Styles

Beyond the API, we need to figure out the best styles for certain platforms. Our base theme is very much inspired by iOS 7, but doesn't need to be so heavily based on it.

#### Tabs

Right now we have a very iOS 7 specific tabs style. Can we fix that to be more android friendly?

Yes, we can. See Ben's design in the comments below for the style we have chosen.

- [x] Implement a more Android-friendly default tabs

#### Navigation

Navigation is pretty iOS specific, what would be a simple fix for adding an Android specific navigation animation? Maybe a "push and slide" kind of animation with 3D depth?

- [x] Implement more Android friendly navigation

#### Scrolling

Scrolling, while it doesn't bounce on Android, does still have inertia like iOS 7. Are there small changes we can make it make it more Android like?

- [ ] Tweak scroll feel on Android
- [ ] Allow bouncing to be enabled through a flag

#### Back buttons

Back button styles are very iOS like. We could incorporate both styles using the correct layout and icons.

- [ ] Change default back button icon for Android
- [ ] Tweak back button padding

#### Typeface

iOS uses Helvetica Neue. Android uses [Roboto](http://developer.android.com/design/style/typography.html). Would it be possible to include this typeface in Ionic and have it set by default for Android builds? 

- [ ] Analyze what this would mean for Ionic apps

#### Icon buttons

In iOS (also how Ionic currently does this), the icons "fade" out when clicked. In Android, there is a big colored box behind them on click. Minor, but definitely a noticeable difference. 

- [ ] Implement full-background active states for Icon buttons on Android
```js
function applyDefaults(platformDefaults) {
  forEach(platformDefaults, function(defaults, configName) {
    extend($injector.get(configName), defaults);
  });
}
```