public async Task<IHttpActionResult> Post(CharacterViewModel characterViewModel)
        {
            if (!ModelState.IsValid) return BadRequest("Make sure the model is valid");

            var result = _repository.CreateCharacter(characterViewModel);

            if (result != Repository.CharacterCreationStatusCode.Created) return BadRequest(Enum.GetName(typeof(Repository.CharacterCreationStatusCode), result));

            return Ok(result);
        }
        /// <summary>
        /// Attempts to create a new character from the client input
        /// </summary>
        /// <param name="characterViewModel"></param>
        /// <returns></returns>
        public CharacterCreationStatusCode CreateCharacter(CharacterViewModel characterViewModel)
        {
            var character = AutoMapper.Mapper.Map<Character>(characterViewModel);

            var statusCode = CanCreateCharacter(character);

            if (statusCode == CharacterCreationStatusCode.Created)
            {
                _context.Characters.Add(character);
                _context.SaveChanges(Username);
            }

            return statusCode;
        }