public async Task<IHttpActionResult> PostDeck(Deck deck) {
            if (!ModelState.IsValid)
                return BadRequest(ModelState);

            db.Decks.Add(deck);
            await db.SaveChangesAsync();

            return CreatedAtRoute("DefaultApi", new { id = deck.DeckId }, deck);
        }
        // PUT api/Deck/5
        public async Task<IHttpActionResult> PutDeck(int id, Deck deck) {
            if (!ModelState.IsValid)
                return BadRequest(ModelState);

            if (id != deck.DeckId)
                return BadRequest();

            db.Entry(deck).State = EntityState.Modified;

            try {
                await db.SaveChangesAsync();
            } catch (DbUpdateConcurrencyException) {
                if (!DeckExists(id))
                    return NotFound();
                else
                    throw;
            }

            return StatusCode(HttpStatusCode.NoContent);
        }