Support latest dependencies, cleanup analysis options (#246)

Cleanup changelog
Test on latest supported stable SDK
diff --git a/.travis.yml b/.travis.yml
index 26122d3..cd9459e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,6 +1,7 @@
 language: dart
 
 dart:
+  - 2.12.0
   - dev
 
 script: ./tool/travis.sh
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 55cd433..f071234 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,51 +1,53 @@
-## v 2.1.0
+## 2.1.1-dev
+
+## 2.1.0
 
 - Stable release for null safety.
 
-## v 2.1.0-nullsafety.5
+## 2.1.0-nullsafety.5
 
 - Update SDK constraints to `>=2.12.0-0 <3.0.0` based on beta release
   guidelines.
 
-## v 2.1.0-nullsafety.4
+## 2.1.0-nullsafety.4
 
 - Allow prerelease versions of the 2.12 sdk.
 
-## v 2.1.0-nullsafety.3
+## 2.1.0-nullsafety.3
 
 - Allow 2.10 stable and 2.11.0 dev SDK versions.
 
-## v 2.1.0-nullsafety.2
+## 2.1.0-nullsafety.2
 
 - Update for the 2.10 dev sdk.
 
-## v 2.1.0-nullsafety.1
+## 2.1.0-nullsafety.1
 
 - Allow the <=2.9.10 stable sdks.
 
-## v 2.1.0-nullsafety
+## 2.1.0-nullsafety
 
 - Migrate to null safety
 - Improve performance of Matrix4.decompose by reusing objects.
 
-## v 2.0.8 - July 2018
+## 2.0.8 - July 2018
 
 - Internal fix to use Dart 2 core library constant names.
 
-## v 2.0.7 - April 2018
+## 2.0.7 - April 2018
 
 - Fixed indexing bug in MeshGeometry.combine
 
-## v 2.0.6 - March 2018
+## 2.0.6 - March 2018
 
 - Fixed angleTo for vectors that do not have unit length
 - Added Matrix4.tryInvert.
 
-## v 2.0.5 - July 2017
+## 2.0.5 - July 2017
 
 - Strong mode clean
 
-## v 2.0.4 - February 2017
+## 2.0.4 - February 2017
 
 - Added Matrix4.isIdentity()
 - Added Matrix4.isZero()
@@ -53,59 +55,59 @@
 - Added Matrix3.isZero()
 - Added Vector2.angleTo and Vector2.angleToSigned
 
-## v 2.0.3 - May 2016
+## 2.0.3 - May 2016
 
 - Synchronize Float64 version
 
-## v 2.0.2 - May 2016
+## 2.0.2 - May 2016
 
 - Add Matrix4.leftTranslate
 
-## v 2.0.1 - April 2016
+## 2.0.1 - April 2016
 
 - Add Matrix4.SkewX, Matrix4.SkewY, and Matrix4.Skew constructors
 
-## v 2.0.0 - March 2016
+## 2.0.0 - March 2016
 
 - Remove call chaining, methods don't return this anymore. You can use the method cascade operator instead.
 - Remove dependency on quiver package
 
-## v 1.4.7 - February 2016
+## 1.4.7 - February 2016
 
 - Fixed ArgumentError usage in Matrix4.inverted constructor
 
-## v 1.4.6 - January 2016
+## 1.4.6 - January 2016
 
 - Added MatrixX.fromList constructor
 
-## v 1.4.5 - January 2016
+## 1.4.5 - January 2016
 
 - Added Matrix4.inverted constructor
 
-## v 1.4.4 - December 2014
+## 1.4.4 - December 2014
 
 - Updated dependencies.
 - Moved benchmark code into `benchmark/`
 - Updated `vector_math_64`.
 
-## v 1.4.3 - February 2014
+## 1.4.3 - February 2014
 
 - Add color conversion routines (Contributed by Oliver Sand)
 - More collision and geometry routines (Contributed by Oliver Sand)
 - More tests (Contributed by Oliver Sand)
 - v 1.4.3 pub release
 
-## v 1.4.1 - January 2014
+## 1.4.1 - January 2014
 
 - Better mesh generators (contributed by Brandon Jones)
 - Fix bug in ray v. triangle intersection test (contributed by @AMagill)
 
-## v 1.4.0 - November 2013
+## 1.4.0 - November 2013
 
 - Add basic mesh generators (contributed by Brandon Jones)
 - Add more collision detection objects (contributed by Oliver Sand)
 
-## v 1.3.5 - July 2013
+## 1.3.5 - July 2013
 
 - Class names now start with upper case, following Dart style guide.
 - Performance audit.
@@ -115,28 +117,28 @@
 - Added Matrix solve methods (thanks to Laszlo Korte)
 - Added Methods needed for Three.dart (thanks to Anders Forsell)
 
-## v 1.1.0 - April 2013
+## 1.1.0 - April 2013
 
 - Large refactoring.
 
-## v 0.9.7 - March 2013
+## 0.9.7 - March 2013
 
 - Refactor generated constructor code into small functions.
 - Refactor generated operator* code into small functions.
 - Fix typo in quaternion code.
 
-## v 0.9.6 - March 2013
+## 0.9.6 - March 2013
 
 - Update to latest String library.
 - Fix holding references in matrix constructor.
 - Replace double type with num in rotationY, and rotationZ.
 
-## v 0.9.5 - February 2013
+## 0.9.5 - February 2013
 
 - Remove remaining double type tests and replace them with num.
 - Don't throw in the default matrix and vector constructors.
 
-## v 0.9.4 - February 2013
+## 0.9.4 - February 2013
 
 - Remove unnecessary dart:scalarlist import.
 - Now that dart2js is fixed, rename negate_ back to negate.
@@ -144,7 +146,7 @@
 - Flexible constructor fix added to the generator.
 - Tested library under dart2js
 
-## v 0.9.3 - February 2013
+## 0.9.3 - February 2013
 
 - Revert to using a single library!
 - Public API reverted to taking nums instead of doubles.
@@ -155,7 +157,7 @@
 - External contribution by fkleon fixing flexible constructors.
 - External contribution by donny-dont adding a missing cast .toDouble().
 
-## v 0.9.0 - October 2012
+## 0.9.0 - October 2012
 
 - Pub: Dart Vector Math now fully supports the pub package management system!
 - API++: Minor changes to the API everywhere. The changes improve the aesthetics and performance of the library.
@@ -163,7 +165,7 @@
 - 2D Cross Product: The Box2D Dart port requires a 2D cross product.
 - Library Split: Two libraries, one for browser applications and console applications.
 
-## v 0.8.5 - July 29 2012
+## 0.8.5 - July 29 2012
 
 - 33% faster matrix matrix multiply
 - Fix generated operator[]=
@@ -177,7 +179,7 @@
 - Add a new variant of mix() that takes the parameter t as a num or a vector
 - Large code reorganization to make it fit the 'dartblanklib' template
 
-## v 0.8.0 - June 10 2012
+## 0.8.0 - June 10 2012
 
 - Inverse of 2x2,3x3,4x4 matrices
 - Inverse of upper 3x3 of a 4x4 matrix
@@ -193,6 +195,6 @@
 - Added selfAdd, selfSub, selfScale and selfNegate to matrix classes
 - Added serialization support for Float32Array and Vectors/Matrices
 
-## v 0.0.0 - March 20 2012
+## 0.0.0 - March 20 2012
 
 - Initial release
diff --git a/analysis_options.yaml b/analysis_options.yaml
index 900f4f4..2afee87 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -12,10 +12,8 @@
   - avoid_returning_null_for_future
   - avoid_returning_null_for_void
   - avoid_returning_this
-  - avoid_single_cascade_in_expression_statements
   - avoid_unused_constructor_parameters
   - avoid_void_async
-  - await_only_futures
   - camel_case_types
   - cancel_subscriptions
   - comment_references
@@ -45,7 +43,6 @@
   - prefer_final_locals
   - prefer_function_declarations_over_variables
   - prefer_initializing_formals
-  - prefer_inlined_adds
   - prefer_interpolation_to_compose_strings
   - prefer_is_not_operator
   - prefer_null_aware_operators
@@ -57,8 +54,6 @@
   - test_types_in_equals
   - throw_in_finally
   - unnecessary_await_in_return
-  - unnecessary_brace_in_string_interps
-  - unnecessary_getters_setters
   - unnecessary_lambdas
   - unnecessary_null_aware_assignments
   - unnecessary_overrides
diff --git a/pubspec.yaml b/pubspec.yaml
index 7ed694e..2391c19 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,16 +1,16 @@
 name: vector_math
-version: 2.1.0
+version: 2.1.1-dev
 description: A Vector Math library for 2D and 3D applications.
-homepage: https://github.com/google/vector_math.dart
+repository: https://github.com/google/vector_math.dart
 
 environment:
-  sdk: ">=2.12.0-0 <3.0.0"
+  sdk: ">=2.12.0 <3.0.0"
 
 dev_dependencies:
-  benchmark_harness: ^2.0.0-nullsafety.0
+  benchmark_harness: ^2.0.0
   build_runner: ^1.0.0
-  build_test: ^1.2.0
-  build_web_compilers: '>=1.2.0 <3.0.0'
-  path: ^1.8.0-nullsafety
-  pedantic: ^1.10.0-nullsafety
-  test: ^1.16.0-nullsafety
+  build_test: ^2.0.0
+  build_web_compilers: ^2.0.0
+  path: ^1.8.0
+  pedantic: ^1.10.0
+  test: ^1.16.0