mnist 0.5.0

MNIST data set parser.
A crate for parsing the [MNIST]( and [Fashion MNIST]( data set into vectors to be
used by Rust programs.

* [Crate]
* [Documentation]

## Example
use mnist::*;
use ndarray::prelude::*;

fn main() {

    // Deconstruct the returned Mnist struct.
    let Mnist {
    } = MnistBuilder::new()

    let image_num = 0;
    // Can use an Array2 or Array3 here (Array3 for visualization)
    let train_data = Array3::from_shape_vec((50_000, 28, 28), trn_img)
        .expect("Error converting images to Array3 struct")
        .map(|x| *x as f32 / 256.0);
    println!("{:#.1?}\n",train_data.slice(s![image_num, .., ..]));

    // Convert the returned Mnist struct to Array2 format
    let train_labels: Array2<f32> = Array2::from_shape_vec((50_000, 1), trn_lbl)
        .expect("Error converting training labels to Array2 struct")
        .map(|x| *x as f32);
    println!("The first digit is a {:?}",train_labels.slice(s![image_num, ..]) );

    let _test_data = Array3::from_shape_vec((10_000, 28, 28), tst_img)
        .expect("Error converting images to Array3 struct")
        .map(|x| *x as f32 / 256.);

    let _test_labels: Array2<f32> = Array2::from_shape_vec((10_000, 1), tst_lbl)
        .expect("Error converting testing labels to Array2 struct")
        .map(|x| *x as f32);

## Fashion MNIST
The Fasion MNIST [dataset]( offers a similarly-formatted 
drop-in replacement dataset for the original MNIST set, but typically poses a more difficult classification challenge that handwritten numbers. 

An example of downloading this dataset may be found by running: 
$ cargo run --features download --example fashion_mnist